JavaScript for循环
-
JavaScript For循环
循环可以多次执行代码块。循环是很方便的,如果你想一遍又一遍地运行相同的代码,每次都有不同的值。使用数组时经常会出现这种情况:这样写很笨:text += cars[0] + "<br>"; text += cars[1] + "<br>"; text += cars[2] + "<br>"; text += cars[3] + "<br>"; text += cars[4] + "<br>"; text += cars[5] + "<br>";
这是聪明的做法:
尝试一下var i; for (i = 0; i < cars.length; i++) { text += cars[i] + "<br>"; }
-
不同种类的循环
JavaScript支持不同类型的循环:- for - 循环遍历一段代码
- for/in - 遍历对象的属性
- while - 在指定条件为真时循环遍历代码块
- do/while - 当指定条件为真时,循环遍历代码块,代码块最少会执行一次
本节主要介绍for循环
-
for循环
for循环具有以下语法:for (语句 1; 语句 2; 语句 3) { // 要执行的代码块 }
在执行代码块之前执行语句1(一次)。语句2定义了执行代码块的条件。 在执行代码块之后执行语句3(每次)。
尝试一下for (i = 0; i < 5; i++) { text += "The number is " + i + "<br>"; }
从上面的示例中,您可以阅读:语句1在循环开始之前设置变量(var i = 0)。语句2定义了循环运行的条件(i必须小于5)。每次执行循环中的代码块时,语句3都会自增1(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。否则循环永远不会结束。这会使您的浏览器崩溃。在本教程的后续章节中阅读有关中断的内容。
尝试一下for (var i=0 ; ; i++) { "这个数字是:" + i + "<br>"; if(i>15){ break; // 当i大于15时跳出循环 } }
-
声明3
语句3通常会增加初始变量的值。情况并非总是如此,JavaScript并不关心,语句3是可选的。语句3可以执行任何操作,例如负增量(i--),正增量(i = i + 15)或其他任何内容。语句3也可以省略(就像在循环中增加值时):
尝试一下var i = 0; var len = cars.length; for (; i < len; ) { text += cars[i] + " "; i++; }
-
for / in循环
JavaScript for/in语句循环遍历对象的属性:
尝试一下var person = {fname:"John", lname:"Doe", age:25}; var text = ""; var x; for (x in person) { text += person[x]; }
while循环和do/while循环将在下一章来解释。