JS数组遍历中for,forin,forof,map,forEach各自的使用方法与优缺点
优点:支持流程控制(break、continue、return)
forconst arr = ["A", "B", "C"]
for(let i = 0; i<arr.length; i++){
console.log(arr[i])
}
for in优点:能够对索引精确控制
缺点:语法较为繁琐
const arr = ["A","B","C"]
arr["3"] = 1
Array.prototype["cc"] = "ck"
for(let e in arr){
console.log(arr[e])
}
for of缺点:
1.遍历索引为字符串,即e类型为字符串
2.会遍历可枚举的非数字类型键以及原型上的键
3.不同浏览器对for in 顺序实现可能不一致
const arr = ["A","B","C"]
arr["3"] = 1
Array.prototype["cc"] = "ck"
for(let i of arr){
console.log(i)
}
函数式编程-->高阶函数优点:语法简洁、有序遍历
缺点:由于遍历的是值,对索引无直接控制
缺点,不能进行流程控制
mapconst arr = ["A","B","C"]
arr.map(e => console.log(e))
forEach优点:语法简洁,返回一个旧数组的映射数组,不影响原数组
const arr = ["A","B","C"]
arr.forEach(e => console.log(e))
优点:语法简洁,在不需要返回数组时,性能较好比map好
for | T | |
for of | T | |
forEach | T | |
map | T |
在不需要流程控制时,优先使用map,不需要返回值使用forEach,需要索引的控制时,可以回退至for,for of一般结合内置默认迭代器的数据结构(Map、Set)使用,在需要结合生成器 async await 异步迭代时的选择
更多关于JS数组遍历方法的技巧请查看下面的相关链接
相关内容
-
win10多任务按键怎么设置在底部详细方法
win10多任务按键怎么设置在底部详细方法,按键,任务,在使用电脑...
-
设置里程碑|设置里程碑的方法有哪些
设置里程碑|设置里程碑的方法有哪些,,1. 设置里程碑的方法有哪...
-
Outlook的PST文件损坏的修复方法
Outlook的PST文件损坏的修复方法,文件, ...
-
手提电脑手写怎么设置|电脑手写设置方法
手提电脑手写怎么设置|电脑手写设置方法,,电脑手写设置方法看...
-
打印机常见故障排除方法HP5000打印机为例
打印机常见故障排除方法HP5000打印机为例,,HP 50005100打印机...
-
手机版wps里如何给字加拼音|wps在文字上加拼音
手机版wps里如何给字加拼音|wps在文字上加拼音的方法wps怎么...
-
小编辑器教你减少计算机网络流量的最简单方法
小编辑器教你减少计算机网络流量的最简单方法,,核心提示:教你如...
-
Android手机模拟器的安装方法_模拟器安装教程在
Android手机模拟器的安装方法_模拟器安装教程在计算机技能,,核...
-
如何升级路由器的路由器升级_192.168.1.1鲜为人
如何升级路由器的路由器升级_192.168.1.1鲜为人知的方法,,核心...
-
电脑装cpu风扇全过程|电脑cpu风扇安装方法
电脑装cpu风扇全过程|电脑cpu风扇安装方法,,1. 电脑cpu风扇安...
-
电脑硬盘启动设置教程|电脑硬盘启动设置方法
电脑硬盘启动设置教程|电脑硬盘启动设置方法,,1. 电脑硬盘启动...
-
先科电脑显示器无信号|先科显示器使用方法
先科电脑显示器无信号|先科显示器使用方法,,1. 先科显示器使用...
-
萤石设置方法|萤石操作手册下载
萤石设置方法|萤石操作手册下载,,1. 萤石操作手册下载寻找验证...
-
笔记本电脑开机蓝屏|笔记本电脑开机蓝屏怎么解
笔记本电脑开机蓝屏|笔记本电脑开机蓝屏怎么解决方法,,笔记本...
-
Win11任务管理器固定到任务栏方法教程|win11怎
Win11任务管理器固定到任务栏方法教程|win11怎么把应用固定...