Maison > interface Web > js tutoriel > Est-ce que « return » arrête une boucle JavaScript « forEach » ?

Est-ce que « return » arrête une boucle JavaScript « forEach » ?

DDD
Libérer: 2025-01-04 21:07:40
original
927 Les gens l'ont consulté

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

Comprendre l'utilisation de return dans la fonction forEach

Dans la fonction forEach de JavaScript, l'utilisation du mot-clé return a un effet limité.

Impact du retour

Dans une fonction de rappel forEach, return n'affecte que l'exécution de ce rappel particulier. Cela ne rompt pas la boucle et n’empêche pas l’exécution des rappels ultérieurs. Par conséquent, dans l'exemple fourni :

[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)      
})
Copier après la connexion

Lorsque n est égal à 3, le rappel renverra false, ce qui équivaut à renvoyer "undefined" dans ce contexte. Cependant, la boucle continuera comme prévu et le numéro suivant (4) sera alerté.

Méthodes d'itération alternatives

Si vous devez sortir d'une boucle en fonction d'une condition, envisagez d'utiliser des méthodes d'itération alternatives telles que :

  • Un simple boucle :

    for (let i = 0; i < array.length; i++) {
    if (array[i] == 3) {
      break;
    }
    alert(array[i]);
    }
    Copier après la connexion
  • Array.prototype.every():

    array.every((n) => {
    if (n == 3) {
      return false; // Exit the loop
    }
    alert(n);
    return true;
    });
    Copier après la connexion

Documentation du réseau de développeurs Mozilla

Comme indiqué dans le réseau de développeurs Mozilla documentation :

"Il n'y a aucun moyen d'arrêter ou de rompre une boucle forEach() autrement qu'en lançant une exception. Si vous avez besoin d'un tel comportement, la méthode forEach() n'est pas le bon outil."

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal