Ez a cikk leírja a forEach ciklus leállításának eljárását a JavaScriptben.
Hogyan lehet leállítani a JavaScriptet forEach számára?
A program specifikus igényeitől függően többféle módon is megállíthatja a ciklust a programozásban. Használhat például egy huroklezáró feltételt vagy egy break utasítást, mint pl. szünet ' vagy a ' KIJÁRAT ” a hurok leállításához, ha egy bizonyos feltétel teljesül. A probléma azonban az, hogy „ az egyes ” ciklus hibát dob ezen utasítások használata közben.
1. példa: Használja a „break” kifejezést a forEach JavaScript ciklusban
Próbáljuk megállítani a ' az egyes ' hurok a ' szünet ' nyilatkozat. Először hozzon létre páratlan számokból álló tömböt:
tömb volt = [ egy , 3 , 5 , 7 , 9 , tizenegy , 13 , tizenöt ] ;
Használja a forEach ciklust a tömb iterálásához. Ha a „ 5 ” fordul elő egy tömbben az iteráció során, állítsa le a ciklust:
sor. az egyes ( elem => {
ha ( elem == 5 ) {
szünet ;
}
} ) ;
Látható, hogy a break utasítás nem működik a forEach ciklusban:
2. példa: Használja az „EXIT” parancsot a forEach JavaScript ciklusban
Próbálja meg leállítani a hurkot a „ KIJÁRAT ' amikor az elem ' 5 ” egy tömbben fordul elő az iteráció során:
sor. az egyes ( elem => {
ha ( elem == 5 ) {
KIJÁRAT ;
}
} ) ;
Ez is hibát okoz:
A forEach() ciklus leállítása lehetetlen kihívásnak tűnik, de itt van néhány értékelési megoldás:
1. módszer: A JavaScript leállítása forEach „try/catch” blokk használatával
A JavaScriptben nincs beépített mód a forEach() ciklus leállítására vagy megszakítására. Azonban hasonló hatást érhet el, ha kivételt dob, és elkapja a hurkon belül. Ehhez használja a „ kipróbálni/elkapni ' Blokk. Ez egy olyan vezérlőstruktúra, amely lehetővé teszi a kódban előforduló kivételek vagy futásidejű hibák kezelését. A kivételt okozó kód a ' próbálja meg ” blokk, míg a kivételt kezelő kód a „ fogás ' Blokk.
Szintaxis
Használja az alábbi szintaxist a try/catch blokk használatához:
próbálja meg {// kód, amely kivételt okozhat
} fogás ( hiba ) {
// kód a kivétel kezelésére
}
Példa
Csomagolja be a forEach() cikluskódot a try/catch blokkba a ciklus leállításához a hiba kezelésével:
próbálja meg {sor. az egyes ( elem => {
ha ( elem == 5 ) {
dobás új Kivétel ( 'álljon meg' ) ;
}
} ) ;
} fogás ( és ) {
konzol. log ( 'A hurok véget ért' ) ;
}
A fenti kódrészletben a try blokkon belüli kivétel esetén a program azonnal a catch blokkra ugrik, és ott végrehajtja a kódot. Ez lehetővé teszi számunkra, hogy kezeljük a kivételt, és megvédjük a programot az összeomlástól.
Kimenet
Általában nem ajánlott a try/catch blokk használata a forEach() ciklus leállítására JavaScriptben. Ennek az az oka, hogy a try/catch blokk célja a kivételek kezelése, nem pedig a hurok folyásának szabályozása. Tehát jobb alternatív módszereket használni.
2. módszer: Használja a „for” ciklust a JavaScriptben
Használja a ' számára ” ciklus a forEach() ciklus helyett. A break utasítás a for ciklusban használatos, lehetővé téve a korai kilépést, mielőtt a cikluslezárási feltételt elérné. Ez akkor lehet hasznos, ha meg akarja állítani a ciklust, amikor egy bizonyos feltétel kiértékelése ' igaz ” vagy bármilyen más okból kilép a hurokból.
Szintaxis
Kövesse a következő szintaxist a ' számára ” hurok:
számára ( hadd = 0 ; én < sor. hossz ; én ++ ) {//állapot
szünet ;
}
Példa
Használja a ' számára ' hurok a tömb hosszáig iterálásához és a tömb leállításához az elem előfordulása közben 5 ” egy tömbben:
számára ( hadd = 0 ; én < sor. hossz ; én ++ ) {const elem = sor [ én ] ;
ha ( elem == 5 ) {
szünet
}
konzol. log ( elem ) ;
}
A hurok leáll, amikor a „ 5 ' egy tömbben jelenik meg:
3. módszer: Használja a „for-of” ciklust a JavaScriptben
Használhatja a „ for-of ” ciklus a forEach() ciklus alternatívájaként. Egy iterálható objektum elemeinek, például egy tömbnek vagy karakterláncnak az elemei között való hurkolásra szolgál. Hasonló a for-in ciklushoz, de kifejezetten az iterálható objektumokkal való együttműködésre tervezték, és általában tömörebbnek és könnyebben olvashatónak tekinthető.
Szintaxis
A következő szintaxist használják a for-of ciklushoz:
számára ( const tömb eleme ) {//állapot
szünet ;
}
Példa
A for-of ciklus itt a tömb iterálására és az iteráció leállítására szolgál, amikor a ' 5 ” megjelenik egy tömbben az iteráció során:
számára ( const tömb eleme ) {ha ( elem == 5 ) {
szünet ;
}
konzol. log ( elem ) ;
}
Kimenet
Ez minden a forEach() ciklus leállításáról szól a JavaScriptben.
Következtetés
A JavaScriptben nincs beépített mód a forEach() ciklus leállítására vagy megszakítására. De hasonló hatást érhet el a „ kipróbálni/elkapni” Blokk. Használata azonban nem ajánlott, mert a try/catch blokk a kivételek kezelésére szolgál, nem pedig a hurok folyásának szabályozására. Tehát az ideális megközelítés alternatív módszerek alkalmazása, mint például a „ számára ' vagy a ' for-of ” hurok. Ebben a cikkben leírtuk a forEach() ciklus leállításának eljárását a JavaScriptben.