Maison > interface Web > js tutoriel > Est-ce que « return » arrête l'itération d'une boucle « forEach » ?

Est-ce que « return » arrête l'itération d'une boucle « forEach » ?

Patricia Arquette
Libérer: 2024-12-26 18:13:09
original
278 Les gens l'ont consulté

Does `return` Stop a `forEach` Loop's Iteration?

Comment le retour affecte-t-il l'itération de la fonction forEach ?

Lors de l'utilisation de la fonction forEach, vous pouvez vous attendre à ce que le retour d'une valeur fausse éclate de la boucle et arrêter les itérations ultérieures. Cependant, ce n'est pas le cas.

La signification du retour dans forEach

Dans la fonction forEach, le mot-clé return fonctionne différemment que dans les autres boucles. Au lieu d'arrêter la boucle entière, il renvoie uniquement le résultat de l'itération en cours.

Exemple :

Considérez le code JavaScript suivant :

$('button').click(function () {
   [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

Explication :

Lorsque la fonction itérateur rencontre n == 3, il renvoie faux. Cela ne termine pas la boucle entière mais indique plutôt que l'itération actuelle doit renvoyer false.

Pourquoi l'itération continue :

La fonction forEach ignore la valeur renvoyée et continue itérer sur les éléments restants du tableau. En effet, forEach est conçu pour parcourir l'ensemble du tableau, quels que soient les résultats de la fonction itérateur.

Options de boucle alternatives :

Si vous avez besoin de sortir d'une boucle de manière conditionnelle, envisagez d'utiliser des méthodes de bouclage alternatives telles que :

  • Simple boucle
  • pour...de boucle
  • Array.prototype.every()
  • Array.prototype.some()
  • Array.prototype.find ()
  • Array.prototype.findIndex()

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal