while 循环会在指定条件为真时循环执行代码块。

本例中的循环将继续运行,只要变量 i 小于 5:

如果您忘记增加条件中所用变量的值,该循环永远不会结束。这可能导致浏览器崩溃。

do/while 循环是 while 循环的变体。该循环会在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环。

下面的例子使用 do/while 循环。该循环至少会执行一次,即使条件为 false 它也会执行一次,因为代码块会在条件被测试前执行:

别忘记增加条件中所用变量的值,否则循环永远不会结束!

如果您已经阅读了前面那一章关于 for 循环的内容,您会发现 while 循环与 for 循环很像。

本例中的循环使用 for 循环来显示 cars 数组中的所有值:

本例中的循环使用 while 循环来显示 cars 数组中的所有值:

定义了数组后对数组进行赋值,中间如有某些下标未被使用(即未被赋值),在遍历的时候,采用一般的 for 循环和 for...in 循环得到的结果不同。

for...in 循环会自动跳过那些没被赋值的元素,而 for 循环则不会,它会显示出 undefined。

for in : 比较适合遍历对象,遍历对象时使用这个再合适不过了。

do while : 至少执行一边的循环,遍历数组和字符串也是很方便。

while遍历数组的例子中,如果数组中有 0,null,false,undefined 或者空字符串等在 js 中被认为等价于 false 的值,会提前结束遍历。改成判断数组长度即可避免该问题: