资讯专栏INFORMATION COLUMN

关于for循环的简单归纳

gclove / 2990人阅读

摘要:关于循环,我常常会混淆,在此做一下梳理。循环最原始的遍历,获得数组里的值。新增的循环语法,遍历对象的属性值,键值。它只循环集合本身的元素同时,支持遍历其他集合,如字符串和对象。其实是循环的简化版,适合于循环次数未知情况下使用。

关于for循环,我常常会混淆,在此做一下梳理。

1、for循环

最原始的遍历,获得数组里的值。

var arr1 = [1, 2, 3];
for(var i = 0 ; i< arr1.length; i++){
  console.log(arr1[i]);
}
2、for……in

for……in,遍历对象的属性名称,键名key。在数组中,每个元素的下标索引被视为数组的属性名称。所以用for……in遍历数组时,实际上获得的值是索引值。

var arr = ["Hello", "world"];
arr.name = "index";
for (var k in arr){
  console.log(k);   // 0,1,name
  console.log([arr[k]); // 属性对应的值 "Hello", "world"
}
console.log(arr.length); // 2

从结果,我们可以看到,当你为arr添加一个新的属性名:name时,遍历时,会把这个属性包括在内,但是,arr.length还是原来的。

3、for……of(ES6新增的循环语法)

for……of,遍历对象的属性值,键值value。它只循环集合本身的元素

var arr = ["Hello", "world"];
arr.name = "index";
for (var k in arr){
  console.log(k);   // Hello, world
}
console.log(arr.length); // 2

同时,for……of支持遍历其他集合,如字符串、Set和Map对象。再有,它不同于forEach,可以使用 break 语句跳出循环,也可以使用 continue 和 return 语句。

4、forEach

forEach其实是for循环的简化版,适合于循环次数未知情况下使用。foreach 方法没办法使用 break 语句跳出循环,也无法使用return从函数体内返回。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/100581.html

相关文章

  • [DanoR][Java代码][逻辑精简::for循环遍历Iterator迭代器]

    摘要:博主有较强的强迫倾向今天强迫症犯了,就想把代码都精简了结果发现一个关于循环遍历迭代器的精简的写法,利用逻辑代数实现。是通过两个函数和函数互相配合遍历的。不可能抛出异常或返回所以,必为。 博主有较强的强迫倾向! 今天强迫症犯了,就想把代码都精简了! 结果发现一个关于for循环遍历Iterator迭代器的精简的写法,利用逻辑代数实现。 定义: HashMap map = new Ha...

    YacaToy 评论0 收藏0
  • Javascript各种数组遍历方法归纳总结和兼容写法

    摘要:主要用于枚举对象数组遍历效率最低的方法。当前数组元素的值。传递给函数的初始值注意对于空数组是不会执行回调函数的。 前言 PS: 2018/04/26 优化一下排版,重新梳理一下方法,补充一些信息,删除JQuery库用法,只讲解Javascript自带的, for in 语句用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。主要用于枚举对象, 数组遍历效率最低的方法。 va...

    Sanchi 评论0 收藏0
  • 前端知识归纳

    摘要:继承性子标签会继承父标签样式优先级行内样式选择器类选择器标签选择器通配符继承机制创建了的元素中,在垂直方向上的会发生重叠。 技能考察: 一、关于Html 1、html语义化标签的理解; 结构化的理解; 能否写出简洁的html结构; SEO优化 a、理解:根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读和写出更优雅的代码的同时 让浏览器的爬虫和...

    sixleaves 评论0 收藏0
  • 前端知识归纳

    摘要:继承性子标签会继承父标签样式优先级行内样式选择器类选择器标签选择器通配符继承机制创建了的元素中,在垂直方向上的会发生重叠。 技能考察: 一、关于Html 1、html语义化标签的理解; 结构化的理解; 能否写出简洁的html结构; SEO优化 a、理解:根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读和写出更优雅的代码的同时 让浏览器的爬虫和...

    NotFound 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<