一文詳解如何跳出map或者foreach循環(huán)
前言
forEach()和map() 是Array 數(shù)組對象提供的循環(huán)數(shù)組的方法。不能像js循環(huán)表達式那樣使用break 、‘continue’
等結束循環(huán)語句。
那么在forEach() 和 map()方法中如何終止循環(huán)和跳出本次循環(huán)呢?
跳出本地循環(huán)
在foreach和map函數(shù)里使用的 return 來實現(xiàn)跳出本次循環(huán)。以foreach 循環(huán)為例:
var arr = [1,2,3]; var newArr = [] arr.forEach((item,index) =>{ //下標小于2時,直接return之后,不執(zhí)行后面的push。 if(index<2) { return item } newArr.push(item) }) console.log(newArr) // [3] //結果只有3
終止循環(huán)
在foreach和map函數(shù)里使用的 throw 拋出異常來實現(xiàn)跳出本次循環(huán)(強制退出,非必要不建議)。以foreach 循環(huán)為例:
var arr = [1,2,3] var newArr = [] arr.forEach((item,index)=>{ try{ if(index > 1) { throw new Error('文本小于2') } newArr.push(item) }catch (e){ // throw e } }) console.log(newArr) [1,2]
附:for循環(huán)里return和break的區(qū)別
1)return和break的應用場景
- return只能在for循環(huán)外有一層作用域(通常是函數(shù))的時候才能用,因為for循環(huán)自己是沒有作用域的。
- break外邊有沒有函數(shù)都可以,break只是針對該循環(huán)本身而言
2)return和break的使用區(qū)別(外層都有函數(shù)作用域)
- 單層循環(huán):二者都可以跳出該函數(shù)
- 多層循環(huán):
return 返回所有的for循環(huán)內部結構 break 只跳出當前的for循環(huán) // https://blog.csdn.net/weixin_38098192/article/details/84345494
總結
到此這篇關于如何跳出map或者foreach循環(huán)的文章就介紹到這了,更多相關跳出map或foreach循環(huán)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
js讀寫cookie實現(xiàn)一個底部廣告浮層效果的兩種方法
使用js實現(xiàn)一個頁面浮層效果,用js讀寫cookie來實現(xiàn)用戶關閉廣告的顯示狀態(tài),下面有個不錯的示例,感興趣的朋友可以參考下2013-12-12weixin-java-miniapp微信小程序登陸具體實現(xiàn)
這篇文章主要介紹了weixin-java-miniapp微信小程序登陸具體實現(xiàn)的相關資料,包括用戶授權、獲取code、發(fā)送到后臺、后臺驗證并獲取openid和session_key、返回驗證結果等步驟,需要的朋友可以參考下2025-02-02TypeScript實現(xiàn)字符串轉樹結構的方法詳解
有一個多行字符串,每行開頭會用空格來表示它的層級關系,每間隔一層它的空格總數(shù)為2,如何將它轉為json格式的樹型數(shù)據(jù)?本文就跟大家分享下這個算法2022-09-09