Méthodes pour implémenter les boucles : 1. instruction de boucle for ; 2. instruction de boucle "for in" ; 3. instruction de boucle while ; 5. méthode forEach() ; ; 7. méthode filter() ; 8. some(); 9. each() et ainsi de suite.
L'environnement d'exploitation de ce tutoriel : système Windows 7, JavaScript version 1.8.5, ordinateur Dell G3.
12 méthodes de parcours de boucle en JavaScript
1. boucle for
let arr = [1,2,3]; for (let i=0; i<arr.length; i++){ console.log(i,arr[i]) } // 0 1 // 1 2 // 2 3
La boucle for est l'outil de boucle le plus couramment utilisé en JS et est souvent utilisée pour le parcours en boucle de tableaux.
2. for in loop
let obj = {name:'zhou',age:'**'} for(let i in obj){ console.log(i,obj[i]) } // name zhou // age **
for in loop est principalement utilisé pour parcourir des objets ordinaires, i représente la valeur clé de l'objet, et obj[i] représente la valeur correspondante. Lorsque vous l'utilisez pour parcourir le tableau, dans la plupart des cas, vous pouvez obtenir le même effet, mais vous ne devriez pas le faire, c'est risqué, car i est affiché sous forme de chaîne au lieu de l'indice numérique requis par le tableau, ce qui signifie que dans certains cas, des opérations de chaîne se produiront, en tête aux erreurs de données, telles que : '52'+1 = '521' au lieu des 53 dont nous avons besoin.
De plus, lorsque la boucle for in parcourt non seulement ses propres propriétés, elle trouvera également le prototype, il est donc préférable d'ajouter un jugement dans le corps de la boucle, utilisez simplement obj[i].hasOwnProperty(i), donc afin d'éviter de traverser trop d'attributs inutiles.
3. Boucle While
Parcourez de la même manière le tableau cars, utilisez d'abord la méthode de boucle for
let cars=["BMW","Volvo","Saab","Ford"]; let i=0; for (;cars[i];) { console.log(cars[i]) i++; }; // BMW // Volvo // Saab // Ford
puis la méthode de boucle while
cars=["BMW","Volvo","Saab","Ford"]; var i=0; while (cars[i]) { console.log(cars[i] + "<br>") i++; };
Nous avons constaté qu'ils peuvent obtenir le même effet, en fait leur traitement sous-jacent est la même chose Oui, mais la boucle for peut mettre la définition, le jugement conditionnel et les opérations d'incrémentation et de décrémentation dans une seule condition d'exécution. Le code semble plus pratique, mais c'est tout.
4. boucle do while
let i = 3; do{ console.log(i) i--; } while(i>0) // 3 // 2 // 1
La boucle do while est une variante de la boucle while. Elle effectue d'abord une opération puis effectue un jugement conditionnel si c'est vrai, elle continuera à effectuer l'opération si. c'est faux, la boucle va se terminer.
5. Boucle Array forEach
let arr = [1,2,3]; arr.forEach(function(i,index){ console.log(i,index) }) // 1 0 // 2 1 // 3 2
forEach boucle, parcourt chaque élément du tableau et effectue des opérations. Il n'y a pas de valeur de retour et vous n'avez pas besoin de connaître la longueur du tableau. , seul le premier est requis et représente la valeur actuelle sous l'indice.
Veuillez également noter que la boucle forEach ne peut pas être arrêtée avant que tous les éléments ne soient appelés. Elle n'a pas d'instruction break. Si vous devez vous arrêter, vous pouvez essayer une instruction try catch, qui consiste à générer une erreur lorsque vous le souhaitez. forcez une sortie catch, puis revenez dans catch, afin que la boucle puisse être terminée. Si vous utilisez souvent cette méthode, il est préférable de personnaliser une telle fonction forEach dans votre bibliothèque.
6. Méthode Array map()
let arr = [1,2,3]; let tt = arr.map(function(i){ console.log(i) return i*2; }) // [2,4,6]
map() renvoie un nouveau tableau, et les éléments du tableau sont les valeurs des éléments du tableau d'origine après l'appel de la fonction.
Remarque : les méthodes map et forEach ne peuvent être utilisées que pour parcourir des tableaux, pas des objets ordinaires.
7. Méthode Array filter()
let arr = [1,2,3]; let tt = arr.filter(function(i){ return i>1; }) // [2,3]
La méthode filter est une méthode intégrée de l'objet Array. Elle renverra les éléments filtrés sans modifier le tableau d'origine.
8. Méthode Array some()
let arr = [1,2,3]; let tt = arr.some(function(i){ return i>1; }) // true
some() est utilisée pour détecter si les éléments du tableau remplissent les conditions spécifiées (fournies par la fonction) et renvoient une valeur booléenne sans modifier le tableau d'origine.
9. Méthode Array Every()
let arr = [1,2,3]; let tt = arr.some(function(i){ return i>1; }) // 检测数组中元素是否都大于1 // false
every() est utilisée pour détecter si tous les éléments du tableau remplissent les conditions spécifiées (fournies via la fonction), renvoient une valeur booléenne et ne modifient pas l'original. tableau.
10. Méthode Array réduire()
let arr = [1,2,3]; let ad = arr.reduce(function(i,j){ return i+j; }) // 6
reduce() reçoit une fonction en tant qu'accumulateur, et chaque valeur du tableau (de gauche à droite) commence à être réduite et est finalement calculée comme une valeur.
11. Méthode Array réduireRight()
let arr = [1,2,3]; let ad = arr.reduceRight(function(i,j){ return i+j; }) // 6
la méthode reduceRight() a la même fonction que réduire(), elle démarre le calcul à partir de la fin du tableau.
12. boucle for of
let arr = ['name','age']; for(let i of arr){ console.log(i) } // name // age
La boucle for of est une nouvelle instruction dans Es6, utilisée pour remplacer for in et forEach. Elle vous permet de parcourir des tableaux (tableaux), des chaînes (chaînes), des cartes (cartes). , Ensembles (ensembles) et autres structures de données itérables (données itérables), faites attention à sa compatibilité.
【Recommandations associées : Tutoriel d'apprentissage Javascript】
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!