循环
在编程中,循环是一种控制结构,它重复执行代码块,直到满足特定条件。有几个循环,例如for循环、while循环和do-while循环,每个循环的语法和行为略有不同。循环用于执行重复性任务,例如遍历数组的元素或重复特定操作,直到用户输入满足特定条件。
有几种方法可以在JavaScript中执行循环。这里有几个例子:
for循环
这用于迭代值序列,例如数组。语法如下:
for (initialization; condition; increment/decrement) {
// code to be executed
}
下面是一个从1到10计数的for循环示例:
for (let i = 1; i <= 10; i++) {
console.log(i);
}
for… of循环
这用于迭代可迭代对象(例如数组或字符串)中的值。语法如下:
for (variable of object) {
// code to be executed
}
这是打印数组元素的for… of循环示例:
const colors = ['red', 'green', 'blue'];
for (const color of colors) {
console.log(color);
}
while循环
这用于在特定条件为真时重复执行代码块。语法如下:
while (condition) {
// code to be executed
}
下面是一个从1到10计数的while循环示例:
let i = 1;
while (i <= 10) {
console.log(i);
i++;
}
for-in循环
for-in 循环用于遍历对象的属性。语法如下:
for (variable in object) {
// code to be executed
}
以下是记录对象属性的for-in循环示例:
const person = {
name: 'John',
age: 30,
occupation: 'teacher'
};
for (const key in person) {
console.log(key + ': ' + person[key]);
}
这将输出以下内容:
name: John
age: 30
occupation: teacher
需要注意的是,for-in 循环将遍历对象的所有可枚举属性,包括通过原型链继承的属性。假设您只想遍历对象的属性。在这种情况下,您可以使用Object.keys()方法获取对象的可枚举属性数组,然后使用for-of循环或forEach()循环遍历数组。
Object.keys(person).forEach(function(key) {
console.log(key + ': ' + person[key]);
});
do… while循环
这类似于while循环,但会始终如一地执行代码块至少一次,因为在执行循环体后检查了条件。语法如下:
do {
// code to be executed
} while (condition);
这是一个从1到10计数的do… while循环示例:
let i = 1;
do {
console.log(i);
i++;
} while (i <= 10);