JavaScript跳出循環(huán)的幾種常用方法總結(jié)
前言
在編程中,我們經(jīng)常使用 for
循環(huán)來(lái)查找數(shù)據(jù)或進(jìn)行批量操作。當(dāng)找到目標(biāo)數(shù)據(jù)后,為了優(yōu)化性能,需要提前結(jié)束循環(huán)。以下是幾種常用的跳出循環(huán)方法。
1. 跳過(guò)當(dāng)前循環(huán)(continue)
使用 continue
跳過(guò)當(dāng)前迭代,直接進(jìn)入下一次循環(huán)。
for (let i = 0; i < 5; i++) { if (i === 2) continue; // 跳過(guò)i=2的情況 console.log(i); } // 輸出: // 0 // 1 // 3 // 4
2. 跳出當(dāng)前循環(huán)(break)
使用 break
完全終止當(dāng)前循環(huán)。
for (let i = 0; i < 5; i++) { if (i === 3) break; // 當(dāng)i=3時(shí)終止循環(huán) console.log(i); } // 輸出: // 0 // 1 // 2
3. 跳出多層循環(huán)
方法一:使用 label 語(yǔ)句
通過(guò)給循環(huán)添加標(biāo)簽,可以跳出指定的外層循環(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ù)中,通過(guò) return
直接退出整個(gè)函數(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; // 退出整個(gè)函數(shù) } console.log(`正在檢查: ${i}, ${j}`); } } } findMatch(); // 輸出: // 正在檢查: 0, 0 // 正在檢查: 0, 1 // 正在檢查: 0, 2 // 找到匹配: 0, 3
4. 跳出代碼塊(label + break)
標(biāo)簽也可以用于跳出任意代碼塊。
myBlock: { console.log("第一行"); break myBlock; console.log("這行不會(huì)執(zhí)行"); } console.log("塊外代碼"); // 輸出: // 第一行 // 塊外代碼
總結(jié)
方法 | 作用 | 適用場(chǎng)景 |
---|---|---|
continue | 跳過(guò)當(dāng)前迭代 | 需要跳過(guò)某些特定情況時(shí) |
break | 終止當(dāng)前循環(huán) | 找到目標(biāo)后結(jié)束循環(huán) |
label + break | 跳出指定循環(huán)或代碼塊 | 多層嵌套循環(huán)控制 |
return | 退出整個(gè)函數(shù) | 循環(huán)在函數(shù)內(nèi)部時(shí) |
選擇合適的方法可以提高代碼效率和可讀性。
- JavaScript跳出循環(huán)的三種方法(break, return, continue)
- js for終止循環(huán) 跳出多層循環(huán)
- javaScript如何跳出多重循環(huán)break、continue
- JS forEach跳出循環(huán)2種實(shí)現(xiàn)方法
- JS跳出循環(huán)的5種方法總結(jié)(return、break、continue、throw等)
- JS中的幾種循環(huán)和跳出方式
- Js跳出兩級(jí)循環(huán)方法代碼實(shí)例
- JS中跳出循環(huán)的示例代碼
- JavaScript中遍歷跳出循環(huán)方法總結(jié)
相關(guān)文章
JavaScript必看的10道面試題總結(jié)(推薦)
JavaScript 已經(jīng)成為全棧開(kāi)發(fā)技能的基石,在全棧開(kāi)發(fā)面試中都會(huì)不可避免地涉及到與 JavaScript 有關(guān)的問(wèn)題。這篇文章主要給大家介紹了關(guān)于JavaScript必看的10道面試題,需要的朋友可以參考下2021-05-05各瀏覽器對(duì)document.getElementById等方法的實(shí)現(xiàn)差異解析
這篇文章主要是對(duì)各瀏覽器對(duì)document.getElementById等方法的實(shí)現(xiàn)差異進(jìn)行了詳細(xì)的分析介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2013-12-12淺析對(duì)JS中方法unshift和push方法的理解
JavaScript中的`unshift`和`push`方法用于在數(shù)組的開(kāi)始和結(jié)尾添加元素,它們會(huì)直接修改原數(shù)組并返回新的數(shù)組長(zhǎng)度,本文介紹JS中方法unshift和push方法的相關(guān)知識(shí),感興趣的朋友一起看看吧2024-12-12swiperjs實(shí)現(xiàn)導(dǎo)航與tab頁(yè)的聯(lián)動(dòng)
這篇文章主要為大家詳細(xì)介紹了swiperjs實(shí)現(xiàn)導(dǎo)航與tab頁(yè)的聯(lián)動(dòng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-12-12js動(dòng)態(tài)控制table的tr、td增加及刪除的具體實(shí)現(xiàn)
這篇文章主要介紹了使用js如何動(dòng)態(tài)控制table的tr,td增加及刪除,需要的朋友可以參考下2014-04-04JavaScript仿微信(電話)聯(lián)系人列表滑動(dòng)字母索引實(shí)例講解(推薦)
這篇文章主要介紹了仿微信(電話)聯(lián)系人列表滑動(dòng)字母索引實(shí)例,通過(guò)for循環(huán)進(jìn)行判斷,具體操作步驟大家可查看下文的詳細(xì)講解,感興趣的小伙伴們可以參考一下。2017-08-08JavaScript實(shí)現(xiàn)網(wǎng)頁(yè)端播放攝像頭實(shí)時(shí)畫(huà)面
這篇文章主要介紹了如何利用JavaScript實(shí)現(xiàn)在網(wǎng)頁(yè)端播放局域網(wǎng)(不能上云)或是廣域網(wǎng)的攝像頭的實(shí)時(shí)畫(huà)面,文中的示例代碼講解詳細(xì),需要的可以參考一下2022-02-02微信小程序?qū)崿F(xiàn)簡(jiǎn)單倒計(jì)時(shí)功能
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)簡(jiǎn)單倒計(jì)時(shí)功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05基于BootStrap Metronic開(kāi)發(fā)框架經(jīng)驗(yàn)小結(jié)【三】下拉列表Select2插件的使用
本文主要給大家介紹在編輯頁(yè)面中常用到的控件Select2,這個(gè)控件可以更加豐富傳統(tǒng)的Select下拉列表控件,提供更多的功能和更好的用戶體驗(yàn),2016-05-05