zoukankan      html  css  js  c++  java
  • 松软科技Web课堂:JavaScript For 循环

    循环可多次执行代码块。

    JavaScript 循环

    假如您需要运行代码多次,且每次使用不同的值,那么循环(loop)相当方便使用。

    通常我们会遇到使用数组的例子:

    不需要这样写:

    text += cars[0] + "<br>"; 
    text += cars[1] + "<br>"; 
    text += cars[2] + "<br>"; 
    text += cars[3] + "<br>"; 
    text += cars[4] + "<br>"; 
    text += cars[5] + "<br>"; 

    您能够这样写:

    for (i = 0; i < cars.length; i++) { 
        text += cars[i] + "<br>";
     }

    不同类型的循环

    JavaScript 支持不同类型的循环:

    • for - 多次遍历代码块
    • for/in - 遍历对象属性
    • while - 当指定条件为 true 时循环一段代码块
    • do/while - 当指定条件为 true 时循环一段代码块

    For 循环

    for 循环是在您希望创建循环时经常使用的工具。

    for 循环的语法如下:

    for (语句 1; 语句 2; 语句 3) {
         要执行的代码块
    }

    语句 1 在循环(代码块)开始之前执行。

    语句 2 定义运行循环(代码块)的条件。

    语句 3 会在循环(代码块)每次被执行后执行。

    实例

    for (i = 0; i < 5; i++) {
         text += "数字是 " + i + "<br>";
    }

    亲自试一试

    从上面的代码中,您可以了解到:

    语句 1 在循环开始之前设置了一个变量(var i = 0)。

    语句 2 定义运行循环的条件(i 必须小于 5)。

    语句 3 会在代码块每次执行之后对值进行递增(i++)。

    语句 1

    通常,您会使用语句 1 来初始化循环中所使用的的变量(i = 0)。

    但情况并不总是这样,JavaScript 不会在意。语句 1 是可选的。

    您可以在语句 1 中初始化多个值(由逗号分隔):

    实例

    for (i = 0, len = cars.length, text = ""; i < len; i++) { 
        text += cars[i] + "<br>";
    }

    而且您还可以省略语句 1(比如在循环开始前设置好值):

    实例

    var i = 2;
    var len = cars.length;
    var text = "";
    for (; i < len; i++) { 
        text += cars[i] + "<br>";
    }

    语句 2

    通常语句 2 用于计算初始变量的条件。

    但情况并不总是这样,JavaScript 不会在意。语句 2 也是可选的。

    如果语句 2 返回 true,那么循环会重新开始,如果返回 false,则循环将结束。

    如果省略语句 2,那么必须在循环中提供一个 break。否则循环永远不会结束。请在下一章阅读更多关于 break 的内容。

    语句 3

    通常语句 3 会递增初始变量的值。

    但情况并不总是这样,JavaScript 不会在意。语句 3 也是可选的。

    语句 3 可做任何事情,比如负递增(i--),正递增(i = i + 15),或者任何其他事情。

    语句 3 也可被省略(比如当您在循环内递增值时):

    实例

    var i = 0;
    var len = cars.length;
    for (; i < len; ) { 
        text += cars[i] + "<br>";
          i++;
    }

    For/In 循环

    JavaScript for/in 语句遍历对象的属性:

    实例

    var person = {fname:"Bill", lname:"Gates", age:62}; 
    
    var text = "";
    var x;
    for (x in person) {
        text += person[x];
    }
  • 相关阅读:
    《代码之道》试读:规范书变更请求
    解读ASP.NET MVC 4 规划路线图
    淘宝数据魔方技术架构解析
    《程序员实用算法》试读:1.2.2主要的优化:函数调用
    《软件框架设计的艺术》试读:2.2 模块化应用程序
    磁盘分割原理
    无锡云计算中心3年内到底做了什么
    模式识别的一些资料
    边缘检测算法
    用递归方法来搜索连通区域
  • 原文地址:https://www.cnblogs.com/sysoft/p/12014795.html
Copyright © 2011-2022 走看看