ECMAScript 迭代语句

迭代语句又叫循环语句,声明一组要反复执行的命令,直到满足某些条件为止。常用的ECMAScript迭代语句有四种。

  • while 语句

    语法:

    1
    2
    3
    while (condition) {
    statements;
    };

特点:

while循环与if语句很相似,唯一的区别是,只要给定条件(condition)的求值结果是true,包含在花括号里的代码就将反复执行下去,如果为false,则不执行。

eg:

1
2
3
4
5
var count = 1 ;
while (count < 11) {
alert(count);
count++;
};
  • do-while 语句

    语法:

    1
    2
    3
    do {
    statements;
    } while (condition);

特点:

对循环控制条件的求值发生在每次循环结束之后。因此,即使循环控制条件的首次求值结果是false,包含在花括号里的语句也至少会被执行一次。

eg:

1
2
3
4
5
var count = 1 ;
do {
alert(count);
count++;
} while (count < 11);
  • for 语句

    语法:

    1
    2
    3
    for (initial condition; test condition; alter condition ) {
    statements;
    }

特点:

for 语句是前测试循环,而且在进入循环之前,能够初始化变量,并定义循环后要执行的代码。for循环最常见的用途之一就是对某个数组里的全体元素进行遍历处理。

eg:

1
2
3
4
count = [1,2,3,4,5,6,7];
for (var i = 0; i < count.length; i++) {
alert(count[i]);
}
  • for-in 语句

    语法:

    1
    2
    3
    4
    for (variable in object)
    {
    statements
    }

variable:在每次迭代时,将不同的属性名分配给变量。
object:被迭代枚举其属性的对象。

特点:

for…in 语句用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。

eg:

1
2
3
4
5
6
7
8
9
10
var obj = {a:1, b:2, c:3};

for (var prop in obj) {
console.log("obj." + prop + " = " + obj[prop]);
}

// Output:
// "obj.a = 1"
// "obj.b = 2"
// "obj.c = 3"

更多请参考:for-in循环-MDN文档


statement:声明
condition:状态,条件


(END)