1.屬性簡潔表示
可以在大括號中直接寫入變數和函式,作為物件的屬性和方法。這時,屬性名就是變數名, 屬性值就是變數值。
const foo = 'bar';
const baz = ;
baz //
// 等同於
const baz = ;
同樣,方法也可以簡寫。
const o =
};// 等同於
const o =
};
屬性簡寫形式應用於函式返回值時會使得**簡潔、方便。
function getpoint() ;
}getpoint()
//
在列印物件時,簡寫形式同樣較為方便。把多個物件放在大括號裡面輸出,就變成了物件的簡潔表示法,每組鍵值對前面會列印物件名,這樣就比較清晰了。
let user = ;
let foo = ;
console.log(user, foo)
//
console.log()
// , foo: }
2.屬性的遍歷
es6中共有5種可以遍歷物件屬性的方法,分別是:
(1)for...in
for...in
迴圈遍歷物件自身的和繼承的可列舉屬性(不含 symbol 屬性)。
(2)object.keys(obj)
object.keys
返回乙個陣列,包括物件自身的(不含繼承的)所有可列舉屬性(不含 symbol 屬性)的鍵名。
(3)object.getownpropertynames(obj)
object.getownpropertynames
返回乙個陣列,包含物件自身的所有屬性(不含 symbol 屬性,但是包括不可列舉屬性)的鍵名。
(4)object.getownpropertysymbols(obj)
object.getownpropertysymbols
返回乙個陣列,包含物件自身的所有 symbol 屬性的鍵名。
(5)reflect.ownkeys(obj)
reflect.ownkeys
返回乙個陣列,包含物件自身的所有鍵名,不管鍵名是 symbol 或字串,也不管是否可列舉。
以上的 5 種方法遍歷物件的鍵名,都遵守同樣的屬性遍歷的次序規則。
es6 物件的擴充套件 常用
目錄 1.屬性的簡寫 2.object api 3.擴充套件運算子 如果物件中只寫屬性名,不寫屬性值。這時,屬性值等於屬性名所代表的變數。es5寫法 var name cc var obj es6 var obj es6對於object建構函式也進行了擴充套件,加入了一些方法,如下。1.object...
ES6 物件擴充套件
es6 允許直接寫入變數和函式,作為物件的屬性和方法 var key1 1 var bj var bz 方法的簡寫 var ob fn2 表示式還可以用於定義方法名。var lastword last word var a a first word hello a lastword world a ...
ES6物件擴充套件
es6允許直接寫入變數和函式,作為屬性名和方法 var a b var c c 如果屬性值與屬性名一樣,我們值寫屬性名就可以 方法簡寫 add add function 定義物件屬性有兩種方法 obj.name lijixuan 2obj name lijixuan 我們原本只能用識別符號定義屬性,...