借助 for、while 和 for...of 循环,重复执行指令而无需重复编写代码。
在 Kodokon 中打开本课想象一下要为 100 位用户显示欢迎消息:把同一行代码复制 100 次既繁琐又容易出错。循环是一种把一段指令重复执行多次的结构。JavaScript 提供了好几种循环;我们先从最著名的开始:for 循环。
for (let i = 1; i <= 3; i++) {
console.log("Round number " + i);
}
// Prints: Round number 1
// Prints: Round number 2
// Prints: Round number 3for (let i = 1; i <= 3; i++) 这一行分为三部分,用分号隔开:起始(let i = 1 创建一个名为 i、初始值为 1 的计数器)、条件(i <= 3:只要它为真,循环就继续)以及步进(i++ 在每一轮之后给 i 加 1)。一旦条件变为假,循环就会停止。
while 循环更简单:只要它的条件为真,就重复执行它的代码块。当你事先不知道要重复多少次时,就使用它。
let batteryLevel = 3;
while (batteryLevel > 0) {
console.log("Battery: " + batteryLevel);
batteryLevel = batteryLevel - 1;
}
console.log("Battery empty!");最后,for...of 循环会直接遍历一个集合的各个值,比如数组(一个值的列表,你将在第 5 课中详细学习)。每一轮,变量都会接收到下一个值:无需管理计数器。
const fruits = ["apple", "banana", "cherry"];
for (const fruit of fruits) {
console.log(fruit);
}
// Prints: apple, then banana, then cherryfor (let i = 0; i < 3; i++) 的代码块会运行多少次?while 循环的条件永远不会变为假,会发生什么?