fonction de boucle d'arrêt jquery

PHPz
Libérer: 2023-05-12 09:41:37
original
1101 Les gens l'ont consulté

Lors de l'écriture de programmes JavaScript à l'aide de jQuery, les fonctions de boucle sont souvent utilisées pour parcourir des tableaux ou des objets. Mais parfois, nous devons arrêter l'exécution de la fonction de boucle, par exemple lorsqu'une certaine condition est remplie et que la boucle doit être terminée. Alors comment arrêter l’exécution de la fonction boucle ? Cet article présentera plusieurs méthodes.

1. Utilisez l'instruction break

L'instruction break de JavaScript peut être utilisée pour sortir de la boucle. Lorsque vous utilisez la fonction each() de jQuery, vous pouvez utiliser l'instruction break dans le corps de la boucle pour terminer la boucle. Par exemple :

$.each([1, 2, 3, 4, 5], function(index, value) {
  console.log(value);
  if (value === 3) {
    return false; // 等效于 break
  }
});
Copier après la connexion

Dans cet exemple, la méthode $.each() parcourt un tableau et génère la valeur de chaque élément. Lorsque la valeur de l'élément est égale à 3, le rôle de l'instruction break entre en jeu. À ce stade, la boucle est terminée et le résultat de sortie est :

1
2
3
Copier après la connexion
Copier après la connexion

Notez que les instructions return false et break ici ont le même effet, car à l'intérieur de la fonction each(), si la fonction renvoie false, cela équivaut à en utilisant l'instruction break pour sortir de la boucle.

2. Utiliser des marqueurs variables

Dans certains cas, il peut ne pas être possible d'utiliser directement l'instruction break pour terminer la boucle. Dans ce cas, nous pouvons utiliser un marqueur variable pour y parvenir. Par exemple :

var stopped = false;
$.each([1,2,3,4,5], function(index, value){
  console.log(value);
  if(value == 3) {
    stopped = true;
    return false;
  }
});

if(stopped) {
  console.log('循环被停止了!');
}
Copier après la connexion

Ici, nous utilisons une variable nommée stopped et lorsqu'elle atteint 3, définissez-la sur true. Ensuite, la variable est jugée après la boucle. Si elle est vraie, cela signifie que la boucle est arrêtée. Cependant, il convient de noter que si vous devez utiliser une variable marqueur à chaque fois, la lisibilité du code peut être mauvaise. Dans le même temps, la dénomination des variables doit également être prudente.

3. Utilisez le deuxième paramètre de $.each()

En plus d'accepter deux paramètres (le premier paramètre est l'objet traversé, le deuxième paramètre est la fonction de rappel), la fonction $.each() a également un troisième paramètre. Trois paramètres facultatifs, qui indiquent s’il faut abandonner la boucle. Lorsque le troisième paramètre est vrai, la boucle sera interrompue ; False, la boucle continuera.

Par exemple :

$.each([1,2,3,4,5], function(index, value){
  console.log(value);
  if(value == 3) {
    return false;
  }
}, true);
Copier après la connexion

Le résultat renvoyé est :

1
2
3
Copier après la connexion
Copier après la connexion

Il est à noter que si le troisième paramètre est vrai, la valeur du troisième paramètre agira comme un objet de boucle. On peut donc aussi écrire comme ceci :

$.each([1,2,3,4,5], function(index, value, stop){
  console.log(value);
  if(value == 3) {
    stop();
  }
}, true);
Copier après la connexion

L'avantage de ceci est : nous pouvons utiliser le nom de la fonction stop() au lieu de l'instruction return false pour améliorer la lisibilité du code. Dans le même temps, nous pouvons également écrire de manière flexible notre code de boucle de terminaison dans la fonction stop().

4. Utilisez d'autres méthodes de bouclage

Il existe d'autres fonctions de bouclage jQuery, telles que map(), grep(), inArray(), etc., qui ont toutes pour fonction d'abandonner la boucle. Par exemple :

var arr = [1,2,3,4,5];
$.map(arr, function(val, i){
  console.log(val);
  if(val == 3) {
    return null;
  }
});
Copier après la connexion

Dans cet exemple, nous utilisons la méthode map(). La méthode map() exécutera la fonction de rappel une fois pour chaque élément du tableau arr. Lorsque la valeur de l'élément du tableau est égale à 3, nous renvoyons la valeur nulle, ce qui omettra la valeur 3 de la liste de sortie de la méthode map(). Le résultat de sortie est :

1
2
4
5
Copier après la connexion

De plus, vous pouvez également utiliser la fonction grep() de jQuery pour implémenter des opérations de filtrage de tableau.

Résumé :

Il existe plusieurs façons d'arrêter la fonction de boucle ci-dessus. Choisissez différentes méthodes en fonction de la situation réelle. Parmi eux, l'utilisation d'instructions break et de marqueurs de variables est plus courante et relativement simple et facile à comprendre. De plus, il est recommandé de ne pas poursuivre aveuglément l'utilisation d'un code court et concis. La lisibilité et la maintenabilité du code sont les plus importantes.

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