zoukankan      html  css  js  c++  java
  • js的循环

    1.for(){}

      这种方法可能每个人都用过,不多说。

    2.ES5的forEach

    myArray.forEach(function (value) {
    console.log(value);
    });
    缺点:你不能使用break语句中断循环,也不能使用return语句返回到外层函数。
    3.for-in
    for (var index in myArray) {
      console.log(myArray[index]);
    }
    • 在这段代码中,赋给index的值不是实际的数字,而是字符串“0”、“1”、“2”,此时很可能在无意之间进行字符串算数计算,例如:“2” + 1 == “21”,这给编码过程带来极大的不便。
    • 作用于数组的for-in循环体除了遍历数组元素外,还会遍历自定义属性。举个例子,如果你的数组中有一个可枚举属性myArray.name,循环将额外执行一次,遍历到名为“name”的索引。就连数组原型链上的属性都能被访问到。
    • 最让人震惊的是,在某些情况下,这段代码可能按照随机顺序遍历数组元素。
    • 简而言之,for-in是为普通对象设计的,你可以遍历得到字符串类型的键,因此不适用于数组遍历。

    4.ES6的for-of   

    for (var value of myArray) {
      console.log(value);
    }
    • 这是最简洁、最直接的遍历数组元素的语法
    • 这个方法避开了for-in循环的所有缺陷
    • 与forEach()不同的是,它可以正确响应break、continue和return语句

    for-in循环用来遍历对象属性。

    for-of循环用来遍历数据—例如数组中的值。

    (参考:深入浅出ES6迭代器和for-of循环

     
     
  • 相关阅读:
    移动开发 Native APP、Hybrid APP和Web APP介绍
    urllib与urllib2的学习总结(python2.7.X)
    fiddler及postman讲解
    接口测试基础
    UiAutomator2.0 和1.x 的区别
    adb shell am instrument 命令详解
    GT问题记录
    HDU 2492 Ping pong (树状数组)
    CF 567C Geometric Progression
    CF 545E Paths and Trees
  • 原文地址:https://www.cnblogs.com/wangyunhui/p/7448335.html
Copyright © 2011-2022 走看看