es6中的物件
阿新 • • 發佈:2018-11-08
ES6允許把宣告的變數直接賦值給物件,我們看下面的例子。
let a="leiy"
let b="ly"
var obj={a,b}
console.log(obj);
列印結果:
{ a: 'leiy', b: 'ly' }
物件Key值構建
有時候我們會在後臺取出key值,而不是我們前臺定義好的,這時候我們如何構建我們的key值。比如我們在後臺取了一個key值,然後可以用[ ] 的形式,進行物件的構建。
let key="skill"
var obj={
[key]:'web'
}
console.log(obj);
console.log(obj.skill);
列印結果:
{ skill: 'web' }
web
物件方法就是把物件中的屬性,用匿名函式的形式程式設計方法。這個在以前就有應用,我們這裡只是簡單的複習一下。
let obj={
add:function(a,b){
return a+b
}
}
console.log(obj.add(1,2));
列印結果:
3
Object.is( ) 物件比較
物件的比較方法,以前進行物件值的比較,經常使用===來判斷,比如下面的程式碼:
列印結果:var obj1={name:'leiy'} var obj2={name:'leiy'} console.log(obj1.name===obj2.name);
true
那ES6為我們提供了is方法進行對比。
let obj1={name:'leiy'}
let obj2={name:'leiy'}
console.log(Object.is(obj1.name,obj2.name));
列印結果:
true
區分=== 和 is方法的區別是什麼,看下面的程式碼輸出結果。
console.log(+0 === -0); //true console.log(NaN === NaN ); //false console.log(Object.is(+0,-0)); //false console.log(Object.is(NaN,NaN)); //true
===為同值相等,is()為嚴格相等。
Object.assign( )合併物件
運算元組時我們經常使用數組合並,那物件也有合併方法,那就是assgin( )。
let obj1={name:'leiy'}
let obj2={rr:'ly'}
let obj3={cc:'tui'}
let obj=Object.assign(obj1,obj2,obj3)
console.log(obj);
列印結果:
{ name: 'leiy', rr: 'ly', cc: 'tui' }