Il y a beaucoup de nouvelles choses ajoutées dans ES5, et les comprendre sera d'une grande aide pour écrire JavaScript. Par exemple, dans le tableau, nous n'avons peut-être pas besoin d'opter pour des boucles de manière simple et accrocheuse.
Une nouvelle méthode d'écriture des tableaux a été ajoutée dans ES5, comme suit:
foreach (JS v1.6)
Carte (JS v1.6)
Filtre (JS v1.6)
certains (JS v1.6)
Chaque (JS v1.6)
Indexof (JS v1.6)
LastIndexof (JS v1.6)
Réduire (JS v1.8)
ReduceRight (JS v1.8)
1. Propriétés d'objets du tableau de tableau couramment utilisés dans JS:
Comme le montre la figure, la pièce marquée d'un cercle rouge est un nouvel attribut ajouté à ES5.
2. État du support du navigateur:
• IE: 9+;
•Chrome;
• Firefox2 +;
• Safari 3+;
• Opera 9.5+;
3. Méthode de position
Ecmascript5 définit 2 méthodes de position pour les tableaux. indexof (), lastIndexof ();
Les deux méthodes reçoivent deux paramètres: l'élément à trouver et l'index (facultatif) indiquant l'emplacement du point de départ de la recherche.
Parmi eux, IndexOf () commence à regarder en arrière depuis le début du tableau (position 0), tandis que LastIndexof () commence à attendre à partir de la fin du tableau.
Les deux méthodes doivent retourner la position de l'élément à trouver dans le tableau ou retourner -1 si elle n'est pas trouvée;
Exemple:
nombres var = [1,2,3,4,5,4,3,2,1]; alert (nombres.indexof (4)); //4ALERT(NUMBER.LASTINDEXOF(4)); //5Alert(Number.Indexof(4,4)); //5Alert(Number.LastIndexof(4,4)); // 3
4. Méthode d'itération
Ecmascript5 définit 5 méthodes itératives pour les tableaux.
4.1.Every ()
Définition et utilisation: la méthode Every () est utilisée pour détecter si tous les éléments du tableau répondent aux conditions spécifiées (fournies par une fonction).
La méthode chaque () utilise la fonction spécifiée pour détecter tous les éléments du tableau:
• Si un élément est détecté dans le tableau qui n'est pas satisfait, l'expression entière renvoie fausse et les éléments restants ne seront plus détectés.
• Retour True si tous les éléments satisfont la condition.
Remarque: chaque () ne détectera pas les tableaux vides.
Remarque: chaque () ne change pas le tableau d'origine.
Description: Détectez si tous les éléments de l'âge du tableau sont supérieurs à 18 ans:
var âges = [32, 33, 16, 40]; fonction checkAdult (âge) {return age> = 18;} function myFunction () {document.getElementByid ("Demo"). innerHtml = asles.every (checkAdult);}Le résultat est:
FAUX;
4.2. Quelques()
Définition et utilisation: la méthode Some () est utilisée pour détecter si les éléments d'un tableau répondent aux conditions spécifiées (fournies par la fonction).
Exécutez la fonction donnée sur chaque élément du tableau, et si la fonction renvoie true pour l'un ou l'autre élément, il renvoie true;
Le code est le suivant:
var nombres = [1,2,3,4,5,4,3,2,1]; var someresult = nombres.some (fonction (item, index, array) {// item fait référence à la valeur du tableau; index fait référence à l'indice du tableau; array se réfère à l'array lui-même; return (item> 2);}); alert (someResult);Le résultat est:
vrai;
4.3. filtre()
Définition et utilisation: la méthode Filter () crée un nouveau tableau, et les éléments du nouveau tableau sont vérifiés pour tous les éléments du tableau spécifié qui répondent aux critères.
Exécutez une fonction donnée sur chaque élément du tableau, en renvoyant un tableau d'éléments qui renvoient True.
Description: Pour renvoyer un tableau avec des valeurs supérieures à 2, le code est le suivant:
var nombres = [1,2,3,4,5,4,3,2,1]; var filterResult = nombres.filter (fonction (item, index, array) {// item fait référence à la valeur du tableau; index fait référence à l'indice du tableau; array se réfère à l'arrose elle-même; return (item> 2);}); alert (filterResult);Le résultat est:
[3,4,5,4,3]
4.4. carte()
Définition et utilisation: la méthode map () renvoie un nouveau tableau, et les éléments du tableau sont les valeurs traitées par l'élément de tableau d'origine après avoir appelé la fonction.
Exécutez la fonction donnée sur chaque élément du tableau, renvoyant un tableau composé des résultats de chaque appel de fonction.
Description: Multipliez chaque terme dans le tableau par 2 et renvoyez le tableau composé de ces produits. Le code est le suivant:
var nombres = [1,2,3,4,5,4,3,2,1]; var mapResult = nombres.map (fonction (item, index, array) {// item fait référence à la valeur du tableau; index se réfère à l'indice de tableau; array se réfère au tableau lui-même; return item * 2;}); alert (MapResult);Le résultat est:
[2,4,6,8,10,8,6,4,2]
4.5. foreach ()
Définition et utilisation: exécutez la fonction donnée sur chaque élément du tableau. Cette méthode n'a aucune valeur de retour.
Essentiellement le même que l'utilisation d'une boucle pour itérater à travers un tableau. Le code est le suivant:
var nombres = [1,2,3,4]; nombres.ForEach (fonction (item, index, array) {console.log (item);});Le résultat est:
1
2
3
4
5. Réduire la méthode
ECMascript5 ajoute deux nouvelles méthodes pour réduire les tableaux: réduire () et reduceRight ();
Ces deux méthodes itéreront sur tous les éléments du tableau, puis créeront une valeur renvoyée finale. Parmi eux, la méthode Reduce () commence à partir du premier élément du tableau et le passe par un par un à la fin.
ReduceRight () commence à partir du dernier élément du tableau et traverse le premier élément. Les deux méthodes reçoivent deux paramètres: une fonction appelée chaque élément et (facultatif) comme valeur initiale pour la base de rétrécissement.
La fonction transmise pour réduire () et reduceRight () reçoit 4 paramètres: la valeur précédente, la valeur actuelle, l'index de l'élément et l'objet de tableau.
Description: Utilisez la méthode Reduce () pour effectuer le fonctionnement de la recherche de la somme de toutes les valeurs dans un tableau. Le code est le suivant:
var valeurs = [1,2,3,4,5]; var sum = valeurs.reduce (fonction (prev, cur, index, array) {return prev + cur;}); alert (sum);Le résultat est:
15
Ce qui précède est la connaissance pertinente de la méthode de tableau nouvellement ajoutée dans la norme JavaScript ES5 présentée par l'éditeur. J'espère que cela vous sera utile. Si vous avez des questions, veuillez me laisser un message et l'éditeur vous répondra à temps. Merci beaucoup pour votre soutien au site Web Wulin.com!