Heim > Web-Frontend > js-Tutorial > Stoppt „return' eine JavaScript-„forEach'-Schleife?

Stoppt „return' eine JavaScript-„forEach'-Schleife?

DDD
Freigeben: 2025-01-04 21:07:40
Original
927 Leute haben es durchsucht

Does `return` Stop a JavaScript `forEach` Loop?

Verstehen der Verwendung von return in der forEach-Funktion

In der forEach-Funktion von JavaScript hat die Verwendung des Schlüsselworts return nur eine begrenzte Wirkung.

Auswirkungen der Rückgabe

Innerhalb eines forEach-Rückrufs Funktion, return wirkt sich nur auf die Ausführung dieses bestimmten Rückrufs aus. Die Schleife wird dadurch nicht unterbrochen und die Ausführung nachfolgender Rückrufe wird nicht verhindert. Daher gilt im bereitgestellten Beispiel:

[1, 2, 3, 4, 5].forEach(function (n) {
   if (n == 3) {
      // it should break out here and doesn't alert anything after
      return false
   }
   alert(n)      
})
Nach dem Login kopieren

Wenn n gleich 3 ist, gibt der Rückruf „false“ zurück, was in diesem Kontext der Rückgabe von „undefiniert“ entspricht. Die Schleife wird jedoch wie erwartet fortgesetzt und die nächste Nummer (4) wird benachrichtigt.

Alternative Iterationsmethoden

Wenn Sie aus einer Schleife ausbrechen müssen Erwägen Sie basierend auf einer Bedingung die Verwendung alternativer Iterationsmethoden wie:

  • Eine einfache Schleife:

    for (let i = 0; i < array.length; i++) {
    if (array[i] == 3) {
      break;
    }
    alert(array[i]);
    }
    Nach dem Login kopieren
  • Array.prototype.every():

    array.every((n) => {
    if (n == 3) {
      return false; // Exit the loop
    }
    alert(n);
    return true;
    });
    Nach dem Login kopieren

Mozilla Developer Network-Dokumentation

Wie im Mozilla Developer Network angegeben Dokumentation:

„Es gibt keine andere Möglichkeit, eine forEach()-Schleife zu stoppen oder zu unterbrechen, als eine Ausnahme auszulösen. Wenn Sie ein solches Verhalten benötigen, ist die forEach()-Methode das falsche Werkzeug.“

Das obige ist der detaillierte Inhalt vonStoppt „return' eine JavaScript-„forEach'-Schleife?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage