循环可以将代码块执行指定的次数。
下面是 for 循环的语法:
for (语句 1; 语句 2; 语句 3) { 被执行的代码块 }
语句 1 在循环(代码块)开始前执行。可省略,比如在循环开始前已经设置了值。
语句 2 定义运行循环(代码块)的条件。可省略,如果您省略了语句 2,那么必须在循环内提供 break。否则循环就无法停下来。这样有可能令浏览器崩溃。
语句 3 在循环(代码块)已被执行之后执行。 可省略,比如当循环内部有相应的代码时。
例子:
for (var i = 4; i--;) {
console.log(i); // 3, 2, 1, 0
}
上面的代码块中,省略了语句三。
第一步执行语句一,声明初始变量 i ,初始值为4。
第二步执行语句二,因为语句二的返回值为boolean型,会自动进行类型转换,语句二的相当于Boolean(i--)。Boolean(i--)又可以分为两次操作,先执行Boolean(i),然后执行 i--。所以此时Boolean(4)返回true,执行 i-- 后 i 的值变成 3。
第三步执行代码块,即打印 i 的值。// 3
然后循环执行第二步和第三步,直到当 i = 0 时, 在第二步Boolean(i--)返回false, 循环结束。