JS陣列與物件的遍歷方法大全

2022-03-11 08:53:04 字數 1328 閱讀 4524

for-in和for-of

map和foreach區別

object.keys()

getownpropertynames()

一、for-in和for-of

1.for-in迴圈是為了遍歷物件而設計的,事實上for-in也能用來遍歷陣列,但定義的索引i是字串型別的。如果陣列具有乙個可列舉的方法,也會被for-in遍歷到

2.es6中,新增了for-of遍歷方法。它被設計用來遍歷各種類陣列集合,例如dom nodelist物件、map和set物件,甚至字串也行。

var obj=

var arr=["小明","小紅","小黃"]

1.for-in

for(var index in

obj)

2.for-of

for(var value in

arr)

//for-of遍歷字串

for(let value of iterable)

二、map和foreach區別

1.foreach()方法不會返回執行結果,而是undefined。(ie9以下不支援)不能使用break語句中斷迴圈,也不能使用return語句返回到外層函式。

2.map()方法會得到乙個新的陣列並返回,map遍歷支援使用return語句,支援return返回值(ie9以下不支援)

1.foreach

arr.foreach((item,index)=>)

2.map

var returnarr=arr.map((item,index)=>)

console.log(returnarr)

//列印 ["小明1", "小紅1", "小黃1"]

三、object.keys()

1.使用object.keys()遍歷 返回乙個陣列,包括物件自身的(不含繼承的)所有可列舉屬性(不含symbol屬性).

object.keys(obj).foreach(function

(key))

四、object.getownpropertynames()

1.object.getownpropertynames()方法返回物件的所有自身屬性的屬性名(包括不可列舉的屬性)組成的陣列,但不會獲取原型鏈上的屬性。

object.getownpropertynames(obj).foreach(function

(key))

JS物件和陣列的遍歷方法

1 使用object.keys 遍歷 返回乙個陣列,包括物件自身的 不含繼承的 所有可列舉屬性 不含symbol屬性 var obj object.keys obj foreach function key 輸出 a b c 2 使用for.in.遍歷 迴圈遍歷物件自身的和繼承的可列舉屬性 不含sy...

js 陣列遍歷 物件遍歷

一 陣列遍歷 1,普通for迴圈,經常用的陣列遍歷 var arr 1,2,0,3,9 for var i 0 i 2,優化版for迴圈 使用變數,將長度快取起來,避免重複獲取長度,陣列很大時優化效果明顯 for var j 0,len arr.length j len j 3,foreach,es...

js遍歷陣列和物件的方法

第二條鏈結裡有分析不同遍歷方式的效率 var arr name age var obj for in遍歷陣列和和物件 for key in obj foreach遍歷陣列,三個引數依次是陣列元素 索引 陣列本身 arr.foreach function value,index,array 返回乙個陣...