Cum să opriți JavaScript pentru fiecare?

Cum Sa Opriti Javascript Pentru Fiecare



Buclele sunt structuri de control cruciale în programare, deoarece vă permit să executați un bloc de cod de mai multe ori. Cu toate acestea, este important să opriți bucla la un moment dat; în caz contrar, va continua să ruleze pe termen nelimitat. Acest lucru poate duce la probleme, cum ar fi utilizarea resurselor disponibile pe un computer sau cauzarea blocării programelor.

Acest articol va descrie procedura de oprire a buclei forEach în JavaScript.

Cum să opriți JavaScript pentru fiecare?

În funcție de nevoile specifice ale programului, există mai multe modalități de a opri o buclă în programare. De exemplu, puteți utiliza o condiție de terminare a buclei sau o instrucțiune de pauză, cum ar fi „ pauză ' sau ' IEȘIRE ” pentru a opri bucla atunci când este îndeplinită o anumită condiție. Cu toate acestea, problema este aceasta, „ pentru fiecare ” bucla aruncă o eroare în timpul utilizării acestor instrucțiuni.







Exemplul 1: utilizați „break” în forEach JavaScript Loop

Să încercăm să oprim „ pentru fiecare ” buclă folosind “ pauză ' afirmație. Mai întâi, creați o matrice de numere impare:



a fost matrice = [ unu , 3 , 5 , 7 , 9 , unsprezece , 13 , cincisprezece ] ;

Utilizați bucla forEach pentru a repeta matricea. Dacă elementul „ 5 ” apare într-o matrice în timpul iterației, opriți bucla:



matrice. pentru fiecare ( element => {

dacă ( element == 5 ) {

pauză ;

}

} ) ;

Se poate observa că instrucțiunea break nu funcționează în bucla forEach:





Exemplul 2: utilizați „EXIT” în bucla JavaScript forEach

Încercați să opriți bucla folosind „ IEȘIRE „ când elementul „ 5 ” apare într-o matrice în timpul iterației:



matrice. pentru fiecare ( element => {

dacă ( element == 5 ) {

IEȘIRE ;

}

} ) ;

De asemenea, provoacă o eroare:

Oprirea unei bucle forEach() pare a fi o provocare imposibilă, dar iată câteva soluții de evaluat:

Metoda 1: Opriți JavaScript pentru fiecare folosind blocul „try/catch”.

Nu există nicio modalitate încorporată de a opri sau întrerupe o buclă forEach() în JavaScript. Cu toate acestea, puteți obține un efect similar, aruncând o excepție și prinzând-o în buclă. Pentru a face acest lucru, utilizați „ încearcă să prinzi ' bloc. Este o structură de control care vă permite să gestionați excepțiile sau erorile de rulare care pot apărea în cod. Codul care poate provoca o excepție se găsește în „ încerca ”, în timp ce codul care gestionează excepția este conținut în blocul „ captură ' bloc.

Sintaxă

Utilizați sintaxa de mai jos pentru a utiliza blocul try/catch:

încerca {

// cod care poate arunca o excepție

} captură ( eroare ) {

// cod pentru a gestiona excepția

}

Exemplu

Înfășurați codul buclei forEach() în blocul try/catch pentru a opri bucla prin gestionarea erorii:

încerca {

matrice. pentru fiecare ( element => {

dacă ( element == 5 ) {

arunca nou Excepție ( 'Stop' ) ;

}

} ) ;

} captură ( și ) {

consolă. Buturuga ( „Bucla sa încheiat” ) ;

}

În fragmentul de cod de mai sus, atunci când se aruncă o excepție în blocul try, programul va sări imediat la blocul catch și va executa codul acolo. Acest lucru ne oferă posibilitatea de a gestiona excepția și de a proteja programul împotriva blocării.

Ieșire

În general, nu este recomandat să utilizați un bloc try/catch pentru a opri o buclă forEach() în JavaScript. Acest lucru se datorează faptului că scopul unui bloc try/catch este de a gestiona excepțiile, mai degrabă decât de a controla fluxul unei bucle. Deci, este mai bine să folosiți metode alternative.

Metoda 2: Utilizați bucla „for” în JavaScript

Folosește ' pentru ” buclă în loc de bucla forEach(). Declarația break este utilizată în bucla for, permițând o ieșire anticipată înainte de a fi atinsă condiția de terminare a buclei. Acest lucru poate fi util dacă doriți să opriți bucla atunci când o anumită condiție este evaluată ca „ Adevărat ” sau ieși din buclă pentru orice alt motiv.

Sintaxă

Urmați următoarea sintaxă pentru utilizarea „ pentru ” buclă:

pentru ( lasă-mă = 0 ; i < matrice. lungime ; i ++ ) {

//condiție

pauză ;

}

Exemplu

Folosește ' pentru ” buclă pentru a repeta matricea până la lungimea sa și pentru a opri matricea în timp ce apare elementul ” 5 ” într-o matrice:

pentru ( lasă-mă = 0 ; i < matrice. lungime ; i ++ ) {

const element = matrice [ i ] ;

dacă ( element == 5 ) {

pauză

}

consolă. Buturuga ( element ) ;

}

Bucla se oprește atunci când „ 5 ” apare într-o matrice:

Metoda 3: Utilizați bucla „for-of” în JavaScript

De asemenea, puteți folosi „ pentru-de ” buclă ca alternativă la bucla forEach(). Este folosit pentru a parcurge elementele unui obiect iterabil, cum ar fi o matrice sau șir. Este similar cu bucla for-in, dar este conceput special pentru a funcționa cu obiecte iterabile și este, în general, considerat mai concis și mai ușor de citit.

Sintaxă

Următoarea sintaxă este utilizată pentru bucla for-of:

pentru ( const element de matrice ) {

//condiție

pauză ;

}

Exemplu

Bucla for-of este folosită aici pentru a repeta matricea și pentru a opri iterația atunci când elementul „ 5 ” apare într-o matrice în timpul iterației:

pentru ( const element de matrice ) {

dacă ( element == 5 ) {

pauză ;

}

consolă. Buturuga ( element ) ;

}

Ieșire

Acesta este totul despre oprirea buclei forEach() în JavaScript.

Concluzie

Nu există nicio modalitate încorporată de a opri sau întrerupe o buclă forEach() în JavaScript. Dar puteți obține un efect similar folosind „ încearcă să prinzi' bloc. Cu toate acestea, nu se recomandă utilizarea, deoarece un bloc try/catch este pentru a gestiona excepțiile, mai degrabă decât pentru a controla fluxul unei bucle. Deci, abordarea ideală este utilizarea metodelor alternative, cum ar fi „ pentru ' sau ' pentru-de ” buclă. În acest articol, am descris procedura de oprire a buclei forEach() în JavaScript.