ES6中獲取對象的key


ES6中獲取對象的key

const json = {'a': 123, 'b': 321}; Object.keys(json).forEach(key => { window.console.log(key); }); // [a,b] 

ES6一共有五種方法可以遍歷對象的屬性。

for ... in:循環遍歷對象自身的和繼承的可枚舉的屬性(不包含Symbol屬性)
Object.keys(obj): 返回一個數組,包括對象自身的所有可枚舉的屬性(不包含繼承,不包含Symbol屬性)

Object.getOwnPropertyNames(obj):返回一個數組,包含對象自身的所有屬性(含繼承、不可枚舉屬性,不含Symbol屬性)

Object.getOwnPropertySymbols(obj):返回一個數組,包含對象自身的所有Symbol屬性

Reflect.ownKeys(obj):返回一個數組,包含對象自身的所有屬性,不管是屬性名是Symbol或字符串,也不管是否可枚舉

以上的5種方法遍歷對象的屬性,都遵守同樣的屬性遍歷的次序規則。

首先遍歷所有屬性名為數值的屬性,按照數字排序
其次遍歷所有屬性名為字符串的屬性,按照生成時間排序
最后遍歷所有屬性名為Symbol值的屬性,按照生成時間排序


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM