ES 6 JavaScriptオブジェクト属性を巡回するすべての方法のまとめ
1189 ワード
ES 6には5つの方法があります.オブジェクトの属性を遍歴することができます. for…in for…inサイクルは、オブジェクト自身と継承可能なエニュメレート・属性(Symbol属性を含まない)を巡回します.
Object.keys(obj) Object.keysは、オブジェクト自体のエニュメレート・属性(Symbol属性を含まない)を含む配列を返します. Object.getOwn PropertyNames(Obj) Object.getOwnPropertyNamesは、オブジェクト自体の属性を含む配列を返します. Object.getOwn PropertySymbors(Obj) Object.getOwn PropertySymbolは、オブジェクト自体のすべてのSymbol属性を含む配列を返します. Reflect.ownKeys(obj) Reflect.ownKeysは、オブジェクト自体の属性を含めた配列を返します.属性名がSymbolであろうと、文字列であろうと、列挙可能であろうとなかろうと.
以上の5つの方法は、オブジェクトの属性を遍歴するときに、同じ属性が順序規則を巡回します.は、まずすべての属性名が数値という属性を巡回し、数字に従って並べ替えます. は次に、すべての属性名が文字列の属性を巡回し、生成時間に従って並べ替えられます. は最後にSymbol値という属性を巡回し、生成時間に従って並べ替えます. ここで阮一峰先生の総括と共有に感謝します.
var a = {
name: 'xutong',
age: 7
}
Object.prototype.sex = 'male'
for(let prop in a) {
console.log(prop)
}
// sex
var a = {
name: 'xutong',
age: 7
}
Object.prototype.sex = 'male'
console.log(Object.keys(a))
//['name', 'age'] sex
以上の5つの方法は、オブジェクトの属性を遍歴するときに、同じ属性が順序規則を巡回します.