freeCodeCamp/guide/chinese/certifications/javascript-algorithms-and-d.../debugging/prevent-infinite-loops-with.../index.md

31 lines
898 B
Markdown
Raw Normal View History

---
title: Prevent Infinite Loops with a Valid Terminal Condition
localeTitle: 使用有效的终端条件防止无限循环
---
## 使用有效的终端条件防止无限循环
* 为防止无限循环, `while-condition`必须达到终止条件才能退出循环。
* 所以这个挑战中的错误是由于for循环中的条件 - `i != 4` - 而发生的。
* 如果你仔细看看代码:
```javascript
function myFunc() {
for (let i = 1; i != 4; i += 2) {
console.log("Still going!");
}
}
```
* 您将看到`i`首先初始化为1并且在循环的每次迭代之后 `i`递增2。
* 使用该逻辑,在第一次迭代之后 - `i = 3`并且第二次迭代`i = 5` ,将永远不满足条件`i != 4`并且将发生无限循环。
## 解:
```javascript
function myFunc() {
for (let i = 1; i <= 4; i += 2) {
console.log("Still going!");
}
}
```