JavaScript 迭代循环
JavaScript 循环重复执行一段代码若干次。
循环对于以下任务至关重要:
- 遍历值
- 遍历数据结构
- 多次执行某个操作
| 循环类型 | 描述 |
|---|---|
| for | 遍历值和表达式 |
| while | 遍历条件 |
| do...while | 遍历条件 |
| for...in | 遍历对象的属性 |
| for...of | 遍历类似数组的对象 |
| forEach() | 遍历数组中的每个元素 |
for 循环
for 循环用于已知迭代次数的情况。
它由初始化表达式 (exp1)、条件表达式 (exp2) 和递增表达式 (exp3) 组成。
语法
for (exp1; exp2; exp3) {
// 待执行的代码块
}exp1 在代码块执行之前执行一次。
exp2 定义了代码块执行的条件。
exp3 每次代码块执行时都会执行。
while 循环
while 循环会在指定的条件为真时执行一段代码。
语法
while (condition) {
// 要执行的代码块
}在下面的示例中,只要变量 (i) 小于 10,循环中的代码就会不断重复运行:
注意
如果您忘记增加条件语句中使用的变量,循环将永远不会结束。这会导致浏览器崩溃。
do...while 循环
do...while 循环类似于 while 循环,但它保证在检查条件之前,代码块至少会被执行一次。
语法
do {
// 要执行的代码块
}
while (condition);下面的示例使用了一个 do...while 循环。即使条件为假,该循环也至少会执行一次,因为代码块会在条件测试之前执行:
别忘了递增条件语句中使用的变量,否则循环将永无止境!
for...in 循环
for...in 循环遍历对象的可枚举属性。
它通常用于遍历对象的键。
语法
for (key in object) {
// 待执行的代码块
}JavaScript 的 for...in 语句会遍历 person 对象的属性:
示例
const person = {fname:"John", lname:"Doe", age:25};
let text = "";
for (let x in person) {
text += person[x];
}亲自试一试 »for...of 循环
for...of 循环遍历可迭代对象的值,例如数组、字符串、Map、Set 和 NodeList。
语法
for (variable of iterable) {
// 待执行的代码块
}- 变量
每次迭代时,下一个属性的值都会被赋给变量。变量 可以使用const、let或var声明。 - 可迭代对象
具有可迭代属性的对象。
其他方法
数组方法(例如 forEach()、map()、filter() 和 reduce())提供了迭代和操作数组元素的替代方法,与传统的数组操作循环相比,它们通常提供更函数式、更简洁的方法。
