物件的簡潔語法
- 之前的物件語法:
let name = 'murphy'; let age = '18'; let json = { name: name, age: age, showName: function(){ console.log('this.name'); } } 複製程式碼
- ES6物件的簡潔語法:
let name = 'murphy'; let age = '18'; let json = { name, age, showName(){ //需要注意這個地方不要用箭頭函式 console.log('this.name'); } } 複製程式碼
ES6物件的新增特性
Object.is('a','a');
用於比較物件是否相等,與==
,===
相比,解決了NaN!=NaN;
+0 == -0
等問題;Object.assign(target,source1,source2,..)
合併物件,後面的物件會覆蓋前面的物件,用途舉例:- 用於AJAX中使用者自定義options 與defaults 合併;
- 用複製物件:
obj2 = Object.assign('',obj1);
- 與陣列類似,物件中也新增了
Object.keys(), Object.entries()
,而且物件還有Object.values
:常用於for...of
迴圈遍歷; - 擴充套件運算子
...obj
也可以用於物件:- 剩餘引數
let {x,y,...z} = {x:1,y:2,a:3,b:4,c:5};
- 物件複製
let json2 = {...json1};
- 剩餘引數