JavaScript for 循环
示例
循环(遍历)代码块五次
for (let i = 0; i < 5; i++) {
text += i + "<br>";
}
亲自尝试 »
循环(遍历)数组以收集汽车名称
const cars = ["BMW", "Volvo", "Saab", "Ford"];
for (let i = 0; i < cars.length; i++) {
text += cars[i] + "<br>";
}
亲自尝试 »
- 循环从位置 0 开始 (
let i = 0
)。 - 每次运行时,循环会自动增加
i
。 - 循环只要
i < cars.length
就继续运行。
下面还有更多示例。
描述
for
语句定义了一个代码块,只要条件为 true
,就会执行该代码块。
语法
for (语句 1; 语句 2; 语句 3) {
要执行的代码块
}
参数
参数 | 描述 |
语句 1 | 可选的。 在代码块开始之前执行。 通常用于初始化计数器变量。 要初始化多个值,请用逗号分隔每个值。 可以省略此参数,但不能省略分号 ";"。 |
语句 2 | 可选的。 运行代码块的条件。 如果它返回 true ,循环将重新开始,否则循环将结束。可以省略此参数,但不能省略分号 ";"。 |
语句 3 | 可选的。 在代码块之后执行。 通常用于增加计数器变量。 可以省略此参数(例如,在循环内增加/减少值)。 |
JavaScript 循环语句
语句 | 描述 | |
break | 退出循环 | |
continue | 跳过循环中的值 | |
while | 只要条件为 true,就循环代码块 | |
do...while | 循环代码块一次,然后只要条件为 true,就继续循环 | |
for | 只要条件为 true,就循环代码块 | |
for...of | 循环任何可迭代的值 | |
for...in | 循环对象的属性 |
更多示例
在第一个参数中初始化多个值
const cars = ["BMW", "Volvo", "Saab", "Ford"];
for (let i = 0, len = cars.length, text = ""; i < len; i++) {
text += cars[i] + "<br>";
}
亲自尝试 »
省略第一个参数(在循环开始之前设置值)
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let i = 2;
let len = cars.length;
let text = "";
for (; i < len; i++) {
text += cars[i] + "<br>";
}
亲自尝试 »
使用 continue
- 循环代码块,但跳过值 3
let text = "";
for (let i = 0; i < 5; i++) {
if (i == 3) continue;
text += i + "<br>";
}
亲自尝试 »
使用 break
- 循环代码块,但在 i == 3
时退出循环
let text = "";
for (let i = 0; i < 5; i++) {
if (i == 3) break;
text += i + "<br>";
}
亲自尝试 »
省略第二个参数。
使用 break
退出循环,否则循环将永远不会结束,并且您的浏览器会崩溃
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let text = "";
for (let i = 0; ; i++) {
if (i == cars-length) break;
text += cars[i] + "<br>";
}
亲自尝试 »
以降序循环数组(负增量)
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let text = "";
for (let i = cars.length - 1; i >= 0; i--) {
text += cars[i] + "<br>";
}
亲自尝试 »
省略最后一个参数,并在循环内部递增值
const cars = ["BMW", "Volvo", "Saab", "Ford"];
let i = 0;
let len = cars.length;
for (; i < len;) {
text += cars[i] + "<br>";
i++;
}
亲自尝试 »
循环一个 NodeList 并更改列表中所有 p 元素的颜色
const myNodelist = document.getElementsByTagName("P");
for (let i = 0; i < myNodelist.length; i++) {
myNodelist[i].style.color = "blue";
}
亲自尝试 »
嵌套循环(循环嵌套循环)
let text = "";
for (let = 0; i < 3; i++) {
text += i + "<br>";
for (let j = 10; j < 15; j++) {
text += j + "<br>";
}
}
亲自尝试 »
浏览器支持
for
是 ECMAScript1 (ES1) 功能。
ES1 (JavaScript 1997) 在所有浏览器中都得到完全支持
Chrome | Edge | Firefox | Safari | Opera | IE |
是 | 是 | 是 | 是 | 是 | 是 |