欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS數(shù)組遍歷中for,for in,for of,map,forEach各自的使用方法與優(yōu)缺點(diǎn)

 更新時(shí)間:2022年01月30日 09:51:36   投稿:wdc  
這篇文章主要介紹了JS數(shù)組遍歷中for,for in,for of,map,forEach各自的使用方法與優(yōu)缺點(diǎn),需要的朋友可以參考下

JS數(shù)組遍歷普通函數(shù)

優(yōu)點(diǎn):支持流程控制(break、continue、return)

for

const arr = ["A", "B", "C"]
 for(let i = 0; i<arr.length; i++){
   console.log(arr[i])
 }

優(yōu)點(diǎn):能夠?qū)λ饕_控制
缺點(diǎn):語(yǔ)法較為繁瑣

for in

const arr = ["A","B","C"]
arr["3"] = 1
Array.prototype["cc"] = "ck"

for(let e in arr){
  console.log(arr[e])
}

缺點(diǎn):
1.遍歷索引為字符串,即e類型為字符串
2.會(huì)遍歷可枚舉的非數(shù)字類型鍵以及原型上的鍵
3.不同瀏覽器對(duì)for in 順序?qū)崿F(xiàn)可能不一致

for of

const arr = ["A","B","C"]
arr["3"] = 1
Array.prototype["cc"] = "ck"
for(let i of arr){
  console.log(i)
}

優(yōu)點(diǎn):語(yǔ)法簡(jiǎn)潔、有序遍歷
缺點(diǎn):由于遍歷的是值,對(duì)索引無(wú)直接控制

函數(shù)式編程-->高階函數(shù)

缺點(diǎn),不能進(jìn)行流程控制

map

const arr = ["A","B","C"]
arr.map(e => console.log(e))

優(yōu)點(diǎn):語(yǔ)法簡(jiǎn)潔,返回一個(gè)舊數(shù)組的映射數(shù)組,不影響原數(shù)組

forEach

const arr = ["A","B","C"]
arr.forEach(e => console.log(e))

優(yōu)點(diǎn):語(yǔ)法簡(jiǎn)潔,在不需要返回?cái)?shù)組時(shí),性能較好比map好

名稱流程控制函數(shù)式
forT 
for ofT 
forEach T
map T

JS數(shù)組遍歷函數(shù)總結(jié):

在不需要流程控制時(shí),優(yōu)先使用map,不需要返回值使用forEach,需要索引的控制時(shí),可以回退至for,for of一般結(jié)合內(nèi)置默認(rèn)迭代器的數(shù)據(jù)結(jié)構(gòu)(Map、Set)使用,在需要結(jié)合生成器 async await 異步迭代時(shí)的選擇

更多關(guān)于JS數(shù)組遍歷方法的技巧請(qǐng)查看下面的相關(guān)鏈接

相關(guān)文章

最新評(píng)論