ES6遍历数组

ES5遍历数组

forEach

myArray.forEach(function (value) {
    console.log(value);
});

缺点

不能使用break语句中断循环,也不能用return语句返回外层函数

for-in循环

for (var i in arr) {
    console.log(arr[i]);
}

缺点

  • 赋值给i的值不是number类型是字符串,
  • 在某些情况下,这段代码可能按照随机顺序遍历数组元素。

ES6 for-of

for (var i of arr){
    console.log(i);
}

优点

  • 最简洁、最直接的遍历数组元素的语法
  • 避开了for-in的缺陷
  • 可以正确响应break、continue和return语句
  • 可以遍历其他集合,支持大多数类数组对象,支持字符串遍历,将字符串是为一系列Unicode字符遍历
for(var char of 'hello'){
    console.log(char)
}
  • 支持Map和Set对象遍历

缺点

  • 不支持普通对象,但如果你想迭代一个对象的属性,你可以用for-in循环(这也是它的本职工作)或内建的Object.keys()方法:
for (var key of Object.keys(someObject)) {
  console.log(key + ": " + someObject[key]);
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容