最新的Web開發教程
 

JavaScript對於聲明

<JavaScript語句參考

通過代碼五倍塊循環:

var text = "";
var i;
for (i = 0; i < 5; i++) {
    text += "The number is " + i + "<br>";
}

文本的結果將是:

The number is 0
The number is 1
The number is 2
The number is 3
The number is 4
試一試»

更多"Try it Yourself"下面的例子。


定義和用法

for語句創建只要條件為真時執行的循環。

循環將繼續只要條件為真運行。 當條件為假它只會停止。

JavaScript的支持不同類型的循環:

  • for -通過代碼塊循環的次數
  • for/in -遍歷一個對象的屬性
  • while -遍歷的代碼塊,同時指定的條件是真
  • 做/同時 -通過代碼塊循環一次,然後重複這個循環而指定的條件是真

提示:使用斷點語句跳出循環,而繼續語句跳過循環的值。


瀏覽器支持

聲明
for

句法

參數值
參數 描述
statement1 可選的。 循環之前執行(the code block)開始。 通常這個語句被用來初始化計數器變量。 為了發起多個值,用逗號分隔的每個值。

注意:此參數可以省略。 但是,不要省略分號";"
statement2 可選的。 定義用於運行循環中的條件(the code block) 。 通常這個語句被用來評估計數器變量的狀態。 如果返回true,則循環將重新開始,如果返回false,循環將結束。

注意:此參數可以省略。 但是,不要省略分號";" 。 另外,如果你省略此參數,必須提供循環內休息。 否則,循環將永遠不會結束,它會崩潰您的瀏覽器
statement3 可選的。 環路(代碼塊)已被執行之後,每次執行。 通常這個語句被用來遞增或遞減計數器變量。

注意:此參數可被省略(eg to increase/decrease values inside the loop)

技術細節

JavaScript的版本: 1.0

例子

更多示例

遍歷數組的索引來收集來自汽車陣列的車名:

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var text = "";
var i;
for (i = 0; i < cars.length; i++) {
    text += cars[i] + "<br>";
}
試一試»

上述例子解釋:

  • 首先,我們在循環開始之前設置一個變量(var i = 0;)
  • 然後,我們定義為循環運行的條件。 只要變量小於所述陣列的長度(which is 4)循環將繼續
  • 每執行一次循環,該變量被加一(i++)
  • 一旦變量不再是小於4 (array's length) ,該條件為假,並且循環將結束

發起在第一個參數的多個值:

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i;
for (i = 0, len = cars.length, text = ""; i < len; i++) {
    text += cars[i] + "<br>";
}
試一試»

省略第一個參數(set values before the loop starts)

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i = 2;
var len = cars.length;
var text = "";
for (; i < len; i++) {
    text += cars[i] + "<br>";
}
試一試»

使用continue語句-通過一個代碼塊循環,但跳過的值"3"

var text = ""
var i;
for (i = 0; i < 5; i++) {
    if (i == 3) {
        continue;
    }
    text += "The number is " + i + "<br>";
}
試一試»

通過代碼塊循環,但退出循環當變量i等於-使用break語句"3"

var text = ""
var i;
for (i = 0; i < 5; i++) {
    if (i == 3) {
        break;
    }
    text += "The number is " + i + "<br>";
}
試一試»

忽略第二個參數。 在這個例子中,我們還利用休息語句退出循環時,i等於“3”(如果省略第二個參數,你必須提供循環內休息,否則循環將永遠不會結束,你的瀏覽器會崩潰):

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var text = "";
var i;
for (i = 0; ; i++) {
    if (i == 3) {
        break;
    }
    text += cars[i] + "<br>";
}
試一試»

通過陣列的索引,在下降順序(負增量)循環:

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var text = "";
var i;
for (i = cars.length - 1; i >= 0; i--) {
    text += cars[i] + "<br>";
}
試一試»

省略最後一個參數,並增加循環內的值:

var cars = ["BMW", "Volvo", "Saab", "Ford"];
var i = 0;
var len = cars.length;
for (; i < len;) {
    text += cars[i] + "<br>";
    i++;
}
試一試»

通過NodeList對象的節點循環和改變所有的背景顏色<p>列表中的元素:

var myNodelist = document.getElementsByTagName("P");
var i;
for (i = 0; i < myNodelist.length; i++) {
    myNodelist[i].style.backgroundColor = "red";
}
試一試»

嵌套循環的一個例子(a loop inside a loop)

var text = "";
var i, j;

for (i = 0; i < 3; i++) {
    text += "<br>" + "i = " + i + ", j = ";

    for (j = 10; j < 15; j++) {
        document.getElementById("demo").innerHTML = text += j + " ";
    }
}
試一試»

相關頁面

JavaScript的教程: JavaScript的For循環

javascript參考: JavaScript來... in語句

javascript參考: JavaScript的break語句

javascript參考: JavaScript的continue語句

javascript參考: JavaScript的同時聲明


<JavaScript語句參考