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種遍歷物件鍵名,都會遵循同樣的屬性遍歷的次序的規則
-首先遍歷說有數值鍵值,按照數值公升序排列。
-其次遍歷所有的字串鍵,按照加入時間公升序排列。
最後遍歷所有symbol鍵,按照加入時間公升序排列
1 reflect.ownkeys()2//["2", "10", "b", "a", symbol()]
5 種方法遍歷物件的屬性
const s symbol s 測試物件 const test arr 0,1,2 date new date 1996 03 03 reg new regexp 我是乙個正則 ig err new error 我是乙個錯誤 s 我的key是symbol noenumerable 我是手動設定的不...
ES6遍歷物件屬性的5種方法
1.for in for in迴圈遍歷物件自身和繼承的可列舉屬性 不含symbol屬性 2.object.keys obj object.keys返回乙個陣列,包括物件自身的 不含繼承的 所有可列舉屬性 不含symbol屬性 的鍵名 3.object.getownpropertynames obj ...
js中遍歷物件(5種)和遍歷陣列(6種)的方法總結
一 遍歷物件方法 1.for.in 遍歷輸出的是物件自身的屬性以及原型鏈上可列舉的屬性 不含symbol屬性 原型鏈上的屬性最後輸出說明先遍歷的是自身的可列舉屬性,後遍歷原型鏈上的 eg var obj object.prototype.pro1 function 在原型鏈上新增屬性 object....