Hvordan stoppe JavaScript foreach?

Hvordan stoppe JavaScript foreach?
Løkker er avgjørende kontrollstrukturer i programmering fordi de lar deg utføre en kodeblokk flere ganger. Det er imidlertid viktig å stoppe sløyfen på et tidspunkt; Ellers vil det fortsette å løpe på ubestemt tid. Dette kan føre til problemer, for eksempel å bruke tilgjengelige ressurser på en datamaskin eller få programmene til å krasje.

Denne artikkelen vil beskrive prosedyren for å stoppe foreach -sløyfen i JavaScript.

Hvordan stoppe JavaScript foreach?

Avhengig av programmets spesifikke behov, er det flere måter å stoppe en sløyfe i programmering. For eksempel kan du bruke en sløyfeavslutningsbetingelse eller en bruddserklæring som "gå i stykker" eller "EXIT”For å stoppe sløyfen når en viss tilstand er oppfylt. Problemet er imidlertid dette, "for hver”Loop kaster en feil mens du bruker disse uttalelsene.

Eksempel 1: Bruk "Break" i foreach JavaScript Loop

La oss prøve å stoppe “for hver”Loop ved hjelp av“gå i stykker”Uttalelse. Først må du lage en rekke oddetall:

var array = [1, 3, 5, 7, 9, 11, 13, 15];

Bruk foreach -sløyfen for å iterere matrisen. Hvis elementet “5”Forekommer i en matrise under iterasjon, stopp sløyfen:

Array.foreach (element =>
if (element == 5)
gå i stykker;

);

Det kan sees at bruddserklæringen ikke fungerer i foreach -sløyfen:

Eksempel 2: Bruk "Avslutt" i foreach JavaScript -loop

Prøv å stoppe sløyfen ved å bruke "EXIT”Når elementet“5”Forekommer i en matrise under iterasjon:

Array.foreach (element =>
if (element == 5)
EXIT;

);

Det forårsaker også en feil:

Å stoppe en foreach () sløyfe ser ut til å være en umulig utfordring, men her er noen få løsninger å evaluere:

  • Bruke prøve/fangeblokk
  • Alternative metoder: “til”Loop og“for-of" Løkke

Metode 1: Stopp JavaScript forach ved å bruke "Try/Catch" -blokk

Det er ingen innebygd måte å stoppe eller bryte en foreach () -sløyfe i JavaScript. Du kan imidlertid oppnå en lignende effekt ved å kaste et unntak og fange det i løkken. For å gjøre dette, bruk "prøv/fange”Blokk. Det er en kontrollstruktur som lar deg håndtere unntak, eller runtime -feil, som kan oppstå i kode. Koden som kan forårsake et unntak, finnes i "prøve”Block, mens koden som håndterer unntaket er inneholdt i“å fange”Blokk.

Syntaks

Bruk syntaksen nedenfor for å bruke Try/Catch-blokken:

prøv
// kode som kan kaste et unntak
fangst (feil)
// kode for å håndtere unntaket

Eksempel

Pakk inn foreach () sløyfekode i Try/Catch -blokken for å stoppe sløyfen ved å håndtere feilen:

prøve
Array.foreach (element =>
if (element == 5)
Kast nytt unntak ("Stopp");

);
fangst (e)
konsoll.Log ("Loop er avsluttet");

I ovennevnte kodebit, når et unntak kastes i forsøksblokken, vil programmet umiddelbart hoppe til fangstblokken og utføre koden der. Dette gir oss muligheten til å administrere unntaket og beskytte programmet mot krasj.

Produksjon

Det anbefales vanligvis ikke å bruke en prøve/fangstblokk for å stoppe en foreach () -sløyfe i JavaScript. Dette er fordi formålet med en prøve/fangstblokk er å håndtere unntak i stedet for å kontrollere strømmen av en sløyfe. Så det er bedre å bruke alternative metoder.

Metode 2: Bruk “For” -sløyfen i JavaScript

Bruke "til”Loop i stedet for foreach () loop. Bruddserklæringen brukes i for -sløyfen, noe som gir en tidlig avkjørsel før sløyfeavslutningstilstanden er nådd. Dette kan være nyttig hvis du vil stoppe sløyfen når en viss tilstand blir evaluert som "ekte”Eller gå ut av sløyfen av andre grunner.

Syntaks

Følg følgende syntaks for bruk av “til" Løkke:

for (la i = 0; i < array.length; i++)
//betingelse
gå i stykker;

Eksempel

Bruke "til”Løkke for å iterere matrisen til dens lengde og stoppe matrisen mens forekomsten av elementet“5”I en matrise:

for (la i = 0; i < array.length; i++)
const element = array [i];
if (element == 5)
gå i stykker

konsoll.logg (element);

Sløyfen stopper når "5”Vises i en matrise:

Metode 3: Bruk “For-of” -løkken i JavaScript

Du kan også bruke “for-of”Loop som et alternativ til foreach () loop. Det brukes til å sløyfe gjennom elementene i et iterable objekt, for eksempel en matrise eller streng. Det ligner på for-in-loopen, men er spesielt designet for å jobbe med iterable objekter og anses generelt som mer kortfattet og lettere å lese.

Syntaks

Følgende syntaks brukes til for-av-loop:

for (const element of array)
//betingelse
gå i stykker;

Eksempel

For-of Loop brukes her for å iterere matrisen og stoppe iterasjonen når elementet "5”Vises i en matrise under iterasjon:

for (const element of array)
if (element == 5)
gå i stykker;

konsoll.logg (element);

Produksjon

Det handler om å stoppe foreach () -løkken i JavaScript.

Konklusjon

Det er ingen innebygd måte å stoppe eller bryte en foreach () -sløyfe i JavaScript. Men du kan oppnå en lignende effekt ved å bruke "prøv/fange ” blokkere. Det anbefales imidlertid ikke å bruke fordi en prøve/fangstblokk er å håndtere unntak i stedet for å kontrollere strømmen av en sløyfe. Så den ideelle tilnærmingen er å bruke alternative metoder, for eksempel "til" eller "for-of" Løkke. I denne artikkelen beskrev vi prosedyren for å stoppe foreach () -løkken i JavaScript.