JavaScript中的循环数组遍历

原创 63966249 随笔 javaScript 78阅读 15 天前 举报

在 JavaScript中提供了如下四种循环遍历数组元素的方式:

for 这是循环遍历数组元素最简单的方式
for(i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
for-in for-in 语句以任意顺序遍历一个对象的可枚举属性,对于数组即是数组下标,对于对象即是对象的 key 值。注意 for-in 遍历返回的对象属性都是字符串类型,即使是数组下标,也是字符串 “0”, “1”, “2” 等等。[不推荐使用 for-in 语句]
for (var index in myArray) {
console.log(myArray[index]);
}
forEach forEach 方法用于调用数组的每个元素,并将元素传递给回调函数;注意在回调函数中无法使用 break 跳出当前循环,也无法使用 return 返回值
myArray.forEach(function (value) {
console.log(value);
});
for-of for-of 语句为各种 collection 集合对象专门定制的,遍历集合对象的属性值,注意和 for-in 的区别
for (var value of myArray) {
console.log(value);
}

注意:
async/await 语法糖本身就是为了避免回调函数这种“不直观”的逻辑,将异步回调转成同步顺序执行,从而使得代码符合直观的理解。而用 forEach/map/reduce 代替for循环,则正是利用回调函数的语法,牺牲代码的直观性,提升代码的简洁性。
  另一个角度await后面要接的是异步操作,而foreach是同步操作并发操作,也就是说无论await是在foreach里面还是await后面接foreach都不行

参考连接:
1:https://www.zhihu.com/question/53466898/answer/259826558
2:http://www.ruanyifeng.com/blog/2015/05/async.html

评论 ( 0 )
最新评论
暂无评论

赶紧努力消灭 0 回复