3種在JavaScript中終止forEach循環(huán)的方式
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
? 面試官:你能停止 JavaScript 中的 forEach 循環(huán)嗎?這是我在面試中曾被問(wèn)到的一個(gè)問(wèn)題,我當(dāng)初的回答是:“不,我不能這樣做。” 不幸的是,我的回答導(dǎo)致面試官突然結(jié)束了面試,對(duì)的,是突然結(jié)束的! 我對(duì)結(jié)果感到沮喪,問(wèn)面試官:“為什么?實(shí)際上可以停止 JavaScript 中的 forEach 循環(huán)嗎?” 在面試官回答之前,我花了一些時(shí)間解釋我對(duì)為什么我們不能直接停止 JavaScript 中的 forEach 循環(huán)的理解。 一、序言這個(gè)問(wèn)題估計(jì)會(huì)難倒一部分同學(xué)。甚至?xí)腥朔磫?wèn),forEach循環(huán)在JavaScript中能終止嗎? 比如 ,我舉個(gè)例子
從這個(gè)例子來(lái)看,好像不管是通過(guò)return還是break都無(wú)法終止forEach循環(huán)。 forEach相當(dāng)于就是函數(shù)的執(zhí)行,比如下面這段代碼,即使func1執(zhí)行了return語(yǔ)句,仍然會(huì)打印出2。
二、終止方法然而,我能想到三種方式可以終止forEach循環(huán)。 1. 拋出錯(cuò)誤當(dāng)找到一個(gè)大于等于0的數(shù)字之后,return循環(huán)將終止執(zhí)行,所以控制臺(tái)只會(huì)輸出數(shù)字0,代碼如下:
2. 將數(shù)組長(zhǎng)度設(shè)置成0我們也能通過(guò)將數(shù)組長(zhǎng)度設(shè)置成0來(lái)終止forEach循環(huán)。代碼如下
3. 將數(shù)組元素移除當(dāng)滿足條件時(shí),使用splice方法將數(shù)組內(nèi)元素移除,也能終止forEach循環(huán)。代碼如下:
三、建議建議使用for和some 在日常工作中,一般是不會(huì)出現(xiàn)一種情況是讓你終止forEach循環(huán)的,如果有終止的情況,可以使用for和some方法。 for
some
最后,3種關(guān)于在JavaScript中終止forEach循環(huán)的方法就先介紹到這里了,希望對(duì)你有所幫助,感謝你的閱讀,編程快樂(lè)! 該文章在 2024/10/14 10:14:59 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |