遍歷物件屬性5種方法,排列順序規則

2022-07-24 09:51:13 字數 678 閱讀 3186

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....