es6物件遍歷方法

2021-10-14 04:49:20 字數 630 閱讀 3244

for…in迴圈遍歷物件自身的和繼承的可列舉屬性(不含 symbol 屬性)。

object.keys返回乙個陣列,包括物件自身的(不含繼承的)所有可列舉屬性(不含 symbol 屬性)的鍵名。

object.getownpropertynames返回乙個陣列,包含物件自身的所有屬性(不含 symbol 屬性,但是包括不可列舉屬性)的鍵名。

object.getownpropertysymbols返回乙個陣列,包含物件自身的所有 symbol 屬性的鍵名。

reflect.ownkeys返回乙個陣列,包含物件自身的所有鍵名,不管鍵名是 symbol 或字串,也不管是否可列舉。

以上的 5 種方法遍歷物件的鍵名,都遵守同樣的屬性遍歷的次序規則。

首先遍歷所有數值鍵,按照數值公升序排列。

其次遍歷所有字串鍵,按照加入時間公升序排列。

最後遍歷所有 symbol 鍵,按照加入時間公升序排列。

reflect.ownkeys()

// [『2′, 』10』, 『b』, 『a』, symbol()]

上面**中,reflect.ownkeys方法返回乙個陣列,包含了引數物件的所有屬性。這個陣列的屬性次序是這樣的,首先是數值屬性2和10,其次是字串屬性b和a,最後是 symbol 屬性。

es6物件屬性的遍歷

es6一共有5種方法可以遍歷物件的屬性。1 for.in for.in迴圈遍歷物件自身的和繼承的可列舉屬性 不含symbol屬性 2 object.keys obj object.keys返回乙個陣列,包括物件自身的 不含繼承的 所有可列舉屬性 不含symbol屬性 3 object.getownp...

重走es6之es6物件

看到這裡突然就想到,你有物件嗎?我沒有 哭的超大聲 es6中規定可以直接在物件中寫入變數和函式作為物件的屬性和方法,此時屬性名為變數名,屬性值為變數的值。物件的簡寫在專案中使用頻率極其高。let name zhangsan let age 18let obj console.log obj 結果為 ...

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