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.foreacharr.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 返回乙個陣...