zoukankan      html  css  js  c++  java
  • for语句

    for 语句 (JavaScript)

     

    只要满足指定的条件,就执行一个语句块。

    语法
     
     
     
     
    for ([initialization]; [test]; [increment])
       statement 
    
    参数
     
     
    initialization

    可选。一个表达式。该表达式在执行循环前仅被执行一次。

    test

    可选。布尔表达式。如果 test 为 true,则执行 statement如果 test 为 false,则终止循环。

    increment

    可选。一个表达式。在每次通过循环的结尾时执行该增量表达式。

    statement

    可选。如果 test 为 true,则执行一个或多个语句。可以是复合语句。

    备注
     
     

    在需要将循环执行已知次数时,通常使用 for 循环。 for 循环对于迭代数组以及执行顺序处理很有用。

    条件表达式的测试发生在循环执行之前,因此 for 语句执行零次或多次。

    在 for 循环语句块中的任何行上,都可以使用 break 语句来退出循环,或者可以使用 continue 语句将控制权移交给循环的下一迭代。

    在下面的示例中,for 语句执行括起来的语句,如下所示:

    • 首先,计算变量 i 的初始值。

    • 然后,只要 i 的值小于或等于 9,就会执行 document.write 语句并重新计算 i。

    • 当 i 大于 9 时,条件变为 false 并且将控制权移交到循环外部。

     
    // i is set to 0 at the start and is incremented by 1 at the
    // end of each iteration.
    // The loop terminates when i is not less than or equal to
    // 9 before a loop iteration.
    for (var i = 0; i <= 9; i++) {
       document.write (i);
       document.write (" ");
    }
    
    // Output: 0 1 2 3 4 5 6 7 8 9
    

    for 语句的所有表达式都是可选的。在下面的示例中,for 语句创建一个无限循环,break 语句用于退出循环。

     
    var j = 0;
    for (;;) {
        if (j >= 5) {
            break;
        }
        j++;
        document.write (j + " ");
    }
    
    // Output: 1 2 3 4 5

    for...in 语句 (JavaScript)

     

    为一个对象的每个属性或一个数组的每个元素执行一个或多个语句。

    语法
     
     
     
     
    for (variable in [object | array]) {
        statements 
    }
    
    参数
     
     
    variable

    必需。一个变量,可以是 object 的任何属性名或 array 的任何元素索引。

    objectarray

    可选。要对其进行循环的对象或数组。

    statements

    可选。要为 object 的每个属性或 array 的每个元素执行的一个或多个语句。可以是复合语句。

    备注
     
     

    在循环的每个迭代开始时,variable 的值为 object 的下一个属性名或 array 的下一个元素索引。然后,可以将 variable 用于循环中的任何语句,以便引用 object 的属性或 array 的元素。

    未以确定的方式分配对象的属性。不能按某个特定属性的索引指定该属性,而只能按该属性的名称指定它。

    按元素顺序循环访问数组,即 0、1、2。

    下面的示例阐释了 for...in 语句的用法,该语句将一个对象用作一个相关数组。

     
    // Initialize object.
    a = {"a" : "Athens" , "b" : "Belgrade", "c" : "Cairo"}
    
    // Iterate over the properties.
    var s = ""
    for (var key in a) {
        s += key + ": " + a[key];
        s += "<br />";
        }
    document.write (s);
    
    // Output:
    // a: Athens
    // b: Belgrade
    // c: Cairo
    

    此示例阐释了如何使用 for ... in 语句来便循环访问具有 expando 属性的 Array 对象。

     
    // Initialize the array.
    var arr = new Array("zero","one","two");
    
    // Add a few expando properties to the array.
    arr["orange"] = "fruit";
    arr["carrot"] = "vegetable";
    
    // Iterate over the properties and elements.
    var s = "";
    for (var key in arr) {
        s += key + ": " + arr[key];
        s += "<br />";
    }
    
    document.write (s);
    
    // Output:
    //   0: zero
    //   1: one
    //   2: two
    //   orange: fruit
    //   carrot: vegetable

    for...of 语句 (JavaScript)

     

    对从可迭代对象中获取的迭代器的每个值执行一个或多个语句。

    语法
     
     
     
     
    for (variable of object) {
        statements 
    }
    
    参数
     
     
    variable

    必需。可为 object 的任何属性值的变量。

    object

    必需。 ArrayMapSet 等可迭代对象或实现 迭代器接口的对象。

    statements

    可选。要为 object 的每个值执行的一个或多个语句。可以是复合语句。

    备注
     
     

    在循环的每个迭代的开头,variable 的值是 object 的下一个属性值。

    下面的示例阐释了如何使用数组上的 for...of 语句。

     
    let arr = [ "fred", "tom", "bob" ];
    
    for (let i of arr) {
        console.log(i);
    }
    
    // Output:
    // fred
    // tom
    // bob
    
    

    下面的示例阐释了如何使用 Map 对象上的 for...of 语句。

     
    var m = new Map();
    m.set(1, "black");
    m.set(2, "red");
    
    for (var n of m) {
      console.log(n);
    }
    
    // Output:
    // 1,black
    // 2,red
    
  • 相关阅读:
    Linux添加用户组和删除用户组
    购物意图分析
    架构是什么来的
    如何突破浏览器加载并发数的限制
    写JS自执行函数时要注意的
    网页是什么
    JVM
    javascript的边界
    浏览器
    HTTP
  • 原文地址:https://www.cnblogs.com/wuchunlin/p/9944299.html
Copyright © 2011-2022 走看看