Sieht so aus, als müssten Sie breaker
zurückgeben, was nicht in dem erwarteten Umfang liegt. Also, ohne _
zu ändern, können Sie nicht einfach aus der Iteration ausbrechen. Die ===
wird sicherstellen, dass die Rückkehr von {}
nicht zum Bruch der Schleife führt; Sie benötigen einen Verweis auf breaker
, den Sie nicht haben.
Sie können nicht. Wie Stefan oben schon sagte, wenn Ihr Browser Array.prototype.forEach nicht unterstützt (was heutzutage eine lange Zeit ist), könnten Sie breaker
zurückgeben - wenn Sie Zugriff darauf hätten. Aber leider nicht, weil breaker
in einer Schließung in der Bibliothek underscore.js als {}
definiert ist.
Leider ist das Verhalten von JavaScript, dass zwei Objekte einander nicht gleich sind, es sei denn, sie sind das exakt gleiche Objekt. Daher ist ({}) === ({})
falsch - und die Rückgabe von {}
an Ihre Funktion führt zu keiner Gleichheitsprüfung mit der internen Variable breaker
.
Sie können Schleifen also nicht ohne umständliche Methoden wie oben beschrieben ausbrechen. Und nach dem MDC gibt es keine Möglichkeit, das native forEach zu brechen verwendet.
Tags und Links javascript node.js