JS——迴圈
阿新 • • 發佈:2022-12-10
For迴圈
for (語句 1; 語句 2; 語句 3) {
要執行的程式碼塊
}
語句1,在迴圈(程式碼塊)開始之前執行。
語句2,定義執行迴圈(程式碼塊)的條件。
語句3,會在迴圈(程式碼塊)每次被執行後執行。
//例句
for (i = 0; i < 5; i++) {
text += "數字是 " + i + "<br>";
}
//語句 1 在迴圈開始之前設定了一個變數(var i = 0)。
//語句 2 定義執行迴圈的條件(i 必須小於 5)。
//語句 3 會在程式碼塊每次執行之後對值進行遞增(i++)。
var i = 2; var len = cars.length; var text = ""; for (; i < len; i++) { text += cars[i] + "<br>"; }
For/In迴圈
var person = {fname:"Bill", lname:"Gates", age:62};
var text = "";
var x;
for (x in person) {
text += person[x];
}
//for in 迴圈遍歷 person 物件
//每次迭代返回一個鍵 (x)
//鍵用於訪問鍵的值
//鍵的值為 person[x]
也可以遍歷陣列的屬性
但如果索引順序很重要,請不要再陣列上使用for in,索引順序依賴於實現。
const numbers = [45, 4, 9, 16, 25]; let txt = ""; for (let x in numbers) { txt += numbers[x]; }
For Of
語句迴圈遍歷可迭代物件的值,例如陣列、字串、對映、節點列表等。
for (variable of iterable) {
// code block to be executed
}
//variable - 對於每次迭代,下一個屬性的值都會分配給變數。變數可以用 const、let 或 var 宣告。
//iterable - 具有可迭代屬性的物件。
遍歷陣列:
const cars = ["BMW", "Volvo", "Mini"];
let text = "";
for (let x of cars) {
text += x;
}
遍歷字串:
let language = "JavaScript"; let text = ""; for (let x of language) { text += x; }
Array.forEach
為每個陣列元素呼叫一次函式(回撥函式)
const numbers = [45, 4, 9, 16, 25];
let txt = "";
numbers.forEach(myFunction);
function myFunction(value, index, array) {
txt += value;
}
While迴圈
就和py中的while True一樣。只要條件為true,那麼將會一直執行。
while (i < 10) {
text += "數字是 " + i;
i++;
}
Do/While迴圈
在檢查條件是否為真值錢,這種迴圈會執行一次程式碼塊,然後只要條件為真就會重複迴圈
do {
text += "The number is " + i;
i++;
}
while (i < 10);