循环并不总是必须完成才能实现其目标。在这种情况下,尽早打破循环可以加快代码速度。
要点
- JavaScript 循环对于重复代码至关重要,理解它们的语法和细微差别至关重要。
- Break 语句可让您提前终止循环,从而提高代码执行效率。
- 跳出循环可以优化代码,防止不必要的迭代,并有助于有效地处理错误。
JavaScript 的循环允许您重复代码,但有时您需要退出循环来处理特殊情况。这就是break语句的用武之地。了解break语句如何工作以及为什么您可能需要它。
了解 JavaScript 循环
JavaScript 循环允许您重复代码,保持程序整洁并减少重复。循环是一个重要的概念,几乎您编写的每个程序都会使用它。所以,如果你刚刚开始学习 JavaScript,你应该确保你彻底理解循环。
您应该熟悉的不同类型的 JavaScript 循环包括:
- for循环
- while 循环
- do...while 循环
- for…in 循环
- for…of 循环
它们都执行迭代,但有细微的差别,使每个都适合不同的情况。以下是每种循环类型的语法:
循环类型:
for
语法:
for (init; cond; next) {
// Code block
}
描述:
只要指定条件 (cond) 为真,就会运行代码块。初始化表达式 (init) 在循环开始时运行一次,而 next 表达式在每次循环到达代码块末尾时运行。
循环类型:
while
语法:
while (condition) {
// Code block
}
描述:
只要指定条件为真,就运行代码块。
循环类型:
do…while
语法:
do {
// Code block
} while (condition);
描述:
只要指定条件为真,就运行代码块。运行代码块后检查条件,因此始终至少运行一次。
循环类型:
for…in
语法:
for (property in object) {
// Code block
}
描述:
为对象的每个属性运行代码块。
循环类型:
for…of
语法:
for (element of iterable) {
// Code block
}
描述:
为可迭代对象(例如数组、字符串或映射)中的每个元素运行代码块。
“break”声明简介
Break 语句提前终止循环。随着循环的进行,一旦接触到break语句,它就会立即停止。这会导致程序在循环后继续执行下一条语句。
break 对于在不可预测的点停止循环非常有用,而不是等待运行多次迭代或主要条件变为 false。它有一个非常简单的语法:
break;
如何在不同的 JavaScript 循环中使用“break”
这些示例演示了如何打破每个可用的 JavaScript 循环。请特别注意局部变量的值以及它们的打印或计算时间。
跳出 for 循环
const numbers = [1, 2, 3, 4, 5];
let sum = 0;
for (let i = 0; i < numbers.length; i++)
{
sum += numbers[i];
if (sum > 5)
{
break;
}
}
console.log(sum); // Output: 6
此代码使用 for 循环对元素数组求和。该循环迭代数组的每个元素,并对它们求和。该条件检查总和是否超过 5。如果超过,break 语句将终止循环。
跳出 While 循环
const numbers = [1, 2, 3, 4, 5];
let product = 1;
let i = 0;
while (i < numbers.length)
{
product *= numbers[i];
if (product > 10)
{
break;
}
i++;
}
console.log(product); // Output: 24
此代码使用 while 循环来查找数组中元素的乘积。该循环迭代数组的每个元素,计算乘积。条件内的break语句将在乘积超过10时停止循环。
跳出 Do…While 循环
let i = 1;
do
{
if (i % 2 === 0)
{
console.log(i);
}
i++;
if (i > 5)
{
break;
}
} while (i <= 10);
// Output:
// 2
// 4
do...while 循环迭代从 1 到 10 的数字,打印偶数。 if 条件中的break 语句检查循环计数器是否超过5。如果条件为真,则继续退出循环。
跳出 for...in 循环
const sentence = "Hello";
let result = "";
for (let index in sentence)
{
if (index == 2)
{
break;
}
result += sentence[index];
}
console.log(result);
// Output: He
该循环迭代字符串中的每个字符,并将它们连接起来。这里,条件检查循环索引是否等于2。如果是,则使用break退出循环。
跳出 for...of 循环
const numbers = [1, 2, 3, 4, 5];
for (let num of numbers.reverse())
{
console.log(num);
if (num === 3)
{
break;
}
}
// Output:
// 5
// 4
// 3
该循环以相反的顺序迭代数组的每个元素,并将它们连接起来。如果循环遇到值3,它将通过break语句退出。
打破循环的重要性
跳出循环可能是优化代码的有效方法。尽早退出循环可以防止不必要的迭代,降低时间复杂度,并允许您有效地处理错误。
重点练习如何打破程序中的不同 JavaScript 循环,以加强您的理解。