JavaScript跳出循環(huán)的幾種常用方法總結(jié)
前言
在編程中,我們經(jīng)常使用 for 循環(huán)來查找數(shù)據(jù)或進行批量操作。當找到目標數(shù)據(jù)后,為了優(yōu)化性能,需要提前結(jié)束循環(huán)。以下是幾種常用的跳出循環(huán)方法。
1. 跳過當前循環(huán)(continue)
使用 continue 跳過當前迭代,直接進入下一次循環(huán)。
for (let i = 0; i < 5; i++) {
if (i === 2) continue; // 跳過i=2的情況
console.log(i);
}
// 輸出:
// 0
// 1
// 3
// 4
2. 跳出當前循環(huán)(break)
使用 break 完全終止當前循環(huán)。
for (let i = 0; i < 5; i++) {
if (i === 3) break; // 當i=3時終止循環(huán)
console.log(i);
}
// 輸出:
// 0
// 1
// 2
3. 跳出多層循環(huán)
方法一:使用 label 語句
通過給循環(huán)添加標簽,可以跳出指定的外層循環(huán)。
outerLoop:
for (let i = 0; i < 3; i++) {
for (let j = 0; j < 3; j++) {
if (i === 1 && j === 1) {
break outerLoop; // 跳出外層循環(huán)
}
console.log(i, j);
}
}
// 輸出:
// 0 0
// 0 1
// 0 2
// 1 0
方法二:使用函數(shù) return
將循環(huán)放在函數(shù)中,通過 return 直接退出整個函數(shù)。
function findMatch() {
for (let i = 0; i < 4; i++) {
for (let j = 0; j < 4; j++) {
if (i + j === 3) {
console.log(`找到匹配: ${i}, ${j}`);
return; // 退出整個函數(shù)
}
console.log(`正在檢查: ${i}, ${j}`);
}
}
}
findMatch();
// 輸出:
// 正在檢查: 0, 0
// 正在檢查: 0, 1
// 正在檢查: 0, 2
// 找到匹配: 0, 3
4. 跳出代碼塊(label + break)
標簽也可以用于跳出任意代碼塊。
myBlock: {
console.log("第一行");
break myBlock;
console.log("這行不會執(zhí)行");
}
console.log("塊外代碼");
// 輸出:
// 第一行
// 塊外代碼
總結(jié)
| 方法 | 作用 | 適用場景 |
|---|---|---|
continue | 跳過當前迭代 | 需要跳過某些特定情況時 |
break | 終止當前循環(huán) | 找到目標后結(jié)束循環(huán) |
label + break | 跳出指定循環(huán)或代碼塊 | 多層嵌套循環(huán)控制 |
return | 退出整個函數(shù) | 循環(huán)在函數(shù)內(nèi)部時 |
選擇合適的方法可以提高代碼效率和可讀性。
相關(guān)文章
作為一名優(yōu)秀的接口調(diào)用工程師,對接口的返回信息進行校驗是必不可少的,本文整理的是一些常用的校驗方式,希望能夠?qū)Υ蠹矣兴鶐椭?/div> 2023-05-05
對比分析Django的Q查詢及AngularJS的Datatables分頁插件
通過本文給大家對比分析了Django的Q查詢及AngularJS的Datatables分頁插件,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-02-02
Javascript動態(tài)綁定事件的簡單實現(xiàn)代碼
Javascript事件綁定的方法很多,很靈活。不過,作為比較簡單的動態(tài)綁定,下面的代碼看似正確,但得不到預(yù)期的效果。2010-12-12
關(guān)于JavaScript中name的意義沖突示例介紹
這篇文章主要介紹了關(guān)于JavaScript中name的意義沖突,需要的朋友可以參考下2014-05-05
Display SQL Server Version Information
Display SQL Server Version Information...2007-06-06最新評論

