Maison > interface Web > js tutoriel > À propos de la méthode itérateur js

À propos de la méthode itérateur js

小云云
Libérer: 2017-12-06 15:03:10
original
2075 Les gens l'ont consulté

Un itérateur est un objet qui peut être utilisé pour parcourir tout ou partie des éléments dans un conteneur de bibliothèque de modèles standard. Chaque objet itérateur représente une certaine adresse dans le conteneur. Il existe deux types de méthodes itératives pour les tableaux js : l'une ne génère pas de nouveau tableau et l'autre génère un nouveau tableau.

La première méthode : ne produit aucun nouveau tableau, mais effectue une opération sur chaque élément du tableau ou renvoie une valeur.

1. Méthode forEach(), qui reçoit une fonction en paramètre et utilise la fonction pour chaque élément du tableau.

<script>
 function arr(num){console.log(num+1)};
 var array = [1,2,3,4,5,6];
 array.forEach(arr);
</script>
Copier après la connexion

2. Every() et some(), les deux méthodes acceptent une fonction dont la valeur de retour est de type booléen et utilisent cette fonction pour chaque élément du tableau. La méthode Every() renvoie true si la fonction renvoie true pour tous les éléments. La méthode some() renvoie true tant qu'un élément utilise cette fonction pour renvoyer true.

<br/>

<script>
 var  arr = [1,3,4,5,6,7,8];
function even(num){return num%2 ==0};
var sum = arr.every(even);
var  nums = arr.some(even);
console.log(sum)//false;
console.log(nums)//true;
Copier après la connexion
</script>
Copier après la connexion

3. La méthode réduire() accepte une fonction et renvoie une valeur. Cette méthode commencera par une valeur accumulée, continuera à appeler la fonction sur la valeur accumulée et les éléments suivants du tableau, jusqu'au dernier élément du tableau, et retournera enfin la valeur accumulée. Vous pouvez également concaténer les éléments du tableau de chaînes en une longue chaîne

<br/>

function add(total,num){return total+-*/num};
var arr =[1,2,3,4];
var sum = arr.reduce(add);
Copier après la connexion

js fournit également la méthode réduireRight(), la différence est qu'elle est en séquence avec la méthode réduire () Exactement le contraire, de droite à gauche. <br/>La deuxième méthode est une méthode itératrice qui génère un nouveau tableau

Il existe deux méthodes itératrices qui peuvent générer un nouveau tableau : map() et filter(). map() est un peu comme forEach(), qui utilise une fonction sur chaque élément du tableau. La différence entre les deux est que map() renvoie un nouveau tableau, qui est le résultat de l'application d'une fonction aux éléments d'origine.

<br/>

   function add(num) {
        return num+=5;
    }
    var words =[1,2,3,4,5];
    var sum =words.map(add);
console.log(sum);//[6,7,8,9,10]
Copier après la connexion

filter() est similaire à each(), en passant une fonction dont la valeur de retour est un type booléen. La différence avec each() est que lorsque le. array is Lorsque la fonction est appliquée à tous les éléments et que les résultats sont vrais, cette méthode ne renvoie pas vrai, mais renvoie un nouveau tableau contenant les éléments pour lesquels la fonction est vraie.

<br/>

    function add(num) {
        return num%2 == 0;
    }
    var words =[1,2,3,4,5];
    var sum =words.filter(add);
console.log(sum);//[2,4];
Copier après la connexion
<br/>
Copier après la connexion

filter() peut également être utilisé pour filtrer des tableaux de chaînes. Par exemple :

<br/>

function add(str){if(str).indexOf("cie")>-1){return true;}return false;}
var words =["recieve","deceit","deceive"]
var miss = words.filter(add);
console.log(miss)//["recieve"]
Copier après la connexion

Le contenu ci-dessus concerne la méthode de l'itérateur js, j'espère qu'il pourra aider tout le monde.

Recommandations associées :

Exemple d'analyse de la façon d'utiliser l'itérateur php pour implémenter une fonction de séquence de Fibonacci

itérateur php Qu'est-ce que

Comment implémenter le modèle d'itérateur JavaScript et explication détaillée des exemples d'utilisation

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!

Étiquettes associées:
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