Ecmascript5 définit 5 méthodes itératives pour les tableaux. Chaque méthode reçoit deux paramètres: la fonction à exécuter sur chaque élément et l'objet Scope (facultatif) qui exécute la fonction (c'est-à-dire la valeur qui affecte cela). Les fonctions transmises dans ces méthodes reçoivent trois paramètres: la valeur de l'élément de tableau, la position de l'élément dans le tableau et l'objet de tableau lui-même. Selon la méthode d'utilisation, la valeur de retour après l'exécution de cette fonction peut ou non affecter la valeur de retour de la méthode. Ces 5 méthodes itératives sont:
Les cinq méthodes itératives acceptent deux paramètres: la fonction à exécuter sur chaque élément et la portée de la fonction exécutée (facultative)
chaque (): exécutez la fonction donnée sur chaque élément du tableau. Si la fonction renvoie true pour chaque élément, il renvoie True.
Filter (): exécute la fonction donnée sur chaque élément du tableau. Renvoi d'un tableau d'articles qui reviendront vrai.
foreach (): exécute la fonction donnée pour chaque élément du tableau. La fonction ne renvoie pas de valeur.
map (): exécutez la fonction donnée sur chaque élément du tableau. Renvoie la fonction composée du résultat de chaque appel de fonction.
un peu (): exécutez la fonction donnée sur chaque élément du tableau. Si la fonction renvoie vrai pour l'un ou l'autre, il renvoie true
Toutes les méthodes ci-dessus ne modifieront pas les valeurs contenues dans le tableau.
Dans la méthode ci-dessus, chaque () et certains () sont très similaires, les deux utilisés pour demander si un élément dans le tableau satisfait une certaine condition. Pour la méthode chaque (), la fonction passée doit retourner True pour chaque élément avant que cette méthode renvoie true. Sinon, il renvoie faux. La méthode Some () renvoie true tant que la fonction passée renvoie vrai dans un élément du tableau. Par exemple:
var nums = [1,2,3,4,5,4,3,2,1]; var result = nums.every (fonction (item, index, array) {return (item> 2);}) console.info (result);Le code ci-dessus imprimera faux dans la console.
var nums = [1,2,3,4,5,4,3,2,1]; var result = nums.some (function (item, index, array) {return (item> 2);}) console.info (résultat);Le code ci-dessus imprime vrai dans la console.
Ce qui suit est un exemple de la fonction filtre (), qui utilise la fonction spécifiée pour déterminer s'il existe un élément dans le tableau renvoyé. Par exemple, pour renvoyer un tableau avec toutes les valeurs supérieures à 2, vous pouvez utiliser le code suivant:
var nums = [1,2,3,4,5,4,3,2,1]; var result = nums.filter (fonction (item, index, array) {return (item> 2);}) console.info (résultat); // [3,4,5,4,3]Le code ci-dessus renvoie un tableau contenant 3, 4, 5, 4, 3 en appelant la méthode filtre (). Cette méthode est très utile pour interroger tous les tableaux qui répondent à certains critères.
La méthode map () renvoie également un tableau, et chaque élément de ce tableau est le résultat de l'exécution de la fonction entrante sur l'élément correspondant dans le tableau d'origine. Par exemple, vous pouvez multiplier chaque élément dans le tableau par 2, puis renvoyer un tableau de ces produits:
var nums = [1,2,3,4,5,4,3,2,1]; var result = nums.map (fonction (item, index, array) {return item * 2;}) console.info (résultat); // [2,4,6,8,10,8,6,4,2]La méthode map () convient pour créer un tableau contenant des éléments un par un dans un autre tableau.
Le dernier est la méthode foreach (), qui exécute simplement la fonction passée sur chaque élément du tableau. Cette méthode n'a aucune valeur de retour, itérant essentiellement sur un tableau à l'aide d'une boucle pour une boucle. Voir l'exemple suivant:
var nums = [1,2,3,4,5,4,3,2,1]; nums.ForEach (fonction (item, index, array) {// exécuter l'opération requise})Ces méthodes de tableau dans JS peuvent faciliter considérablement le traitement des tâches de tableau en effectuant différentes opérations.
Les navigateurs qui prennent en charge ces méthodes itératives sont: IE9 +, Firefox2 +, Safari3 +, Opera9.5 + et Chrome.
nombres var = [1, 2, 3, 4, 5, 4, 3, 2, 1]; // chaque () et certains () sont les plus similaires // chaque élément: l'élément de traversée actuel, index: L'élément actuel Index, Array: L'objet Array lui-même var everyResult = nombres.every (fonction (élément, index, array) {return item> 2;}); alert (everyResult); // false // some () var someresult = nombres.some (fonction (item, index, array) {return item> 2;}); alert (someResult); // true // filter var filterResult = nombres.filter (fonction (item, index, array) {return item> 2;}); alert (filterResult); // [3,4,5,4,3] // map () var mapResult = nombres.map (fonction (item, index, array) {return (item * 2);}); alert (mapResult); // [2,4,6,8,10,8,6,4,2] // foreach n'est essentiellement aucune différence par rapport à la boucle var foreachResult = nombres.ForEach (fonction (item, index, array) {alert (item)});Ce qui précède concerne cet article. J'espère vous donner quelques conseils pour mieux comprendre la méthode d'itération JavaScript.