for 循环: 这是最常用的循环结构,它允许你根据计数器或条件重复执行代码块。
for (let i = 0; i < 10; i++) {
console.log(i); // 输出 0 到 9
}
// for 循环的三个部分:
// 1. 初始化: let i = 0 (在循环开始前执行一次)
// 2. 条件: i < 10 (每次循环迭代前进行检查,如果为 true,则执行循环体)
// 3. 增量/减量: i++ (每次循环迭代后执行)
for...in 循环: 用于迭代对象的属性。 它遍历对象自身的可枚举属性。
const obj = { a: 1, b: 2, c: 3 };
for (const property in obj) {
console.log(`${property}: ${obj[property]}`); // 输出 "a: 1", "b: 2", "c: 3"
}
for...of 循环: 用于迭代可迭代对象的值,例如数组、字符串、Map、Set 等。
const arr = [1, 2, 3];
for (const value of arr) {
console.log(value); // 输出 1, 2, 3
}
const str = "hello";
for (const char of str) {
console.log(char); // 输出 "h", "e", "l", "l", "o"
}
while 循环: 只要指定的条件为 true,就重复执行代码块。
let i = 0;
while (i < 10) {
console.log(i); // 输出 0 到 9
i++;
}
do...while 循环: 类似于 while 循环,但它会先执行一次代码块,然后再检查条件。这意味着代码块至少会执行一次。
let i = 0;
do {
console.log(i); // 输出 0 到 9
i++;
} while (i < 10);