Maison > interface Web > js tutoriel > le corps du texte

Notes d'étude Javascript : attribut de parcours de tableau et de longueur_Connaissances de base

WBOY
Libérer: 2016-05-16 16:30:43
original
1423 Les gens l'ont consulté

Bien que les tableaux soient des objets en Javascript, il n'est pas recommandé d'utiliser des boucles for in pour parcourir des tableaux. En fait, il existe de nombreuses raisons pour nous empêcher d'utiliser des boucles in sur des tableaux.
Étant donné que la boucle for in énumérera toutes les propriétés de la chaîne de prototypes et que le seul moyen de l'arrêter est d'utiliser hasOwnProperty pour juger, cela sera beaucoup plus lent qu'une boucle for normale.

Traversée

Pour de meilleures performances, la meilleure façon de parcourir un tableau est d'utiliser une boucle for classique.

Copier le code Le code est le suivant :

var liste = [1, 2, 3, 4, 5, ...... 100000000];
for(var i = 0, l = list.length; i < l; i ) {
console.log(list[i]);
>

Une astuce supplémentaire ici consiste à mettre en cache la longueur du tableau via l = list.length.
Même si la propriété length est définie sur le tableau lui-même, il y a toujours une surcharge à chaque itération de la boucle. Bien que le dernier moteur Javascript puisse proposer des optimisations de performances pour cette situation, rien ne garantit que votre code Javascript s'exécutera toujours dans ce navigateur.
En fait, les boucles dont les longueurs ne sont pas mises en cache sont beaucoup plus lentes que les boucles dont les longueurs sont mises en cache.

attribut de longueur

Bien que la propriété length renvoie uniquement le nombre d'éléments dans le tableau via la méthode getter, le tableau peut être tronqué via la méthode setter.

Copier le code Le code est le suivant :

var foo = [1, 2, 3, 4, 5, 6];
foo.length = 3;
foo; // [1, 2, 3]
foo.length = 6;
foo.push(4);
foo; // [1, 2, 3, non défini, non défini, non défini, 4]

Attribuer un nombre plus petit à la propriété length tronquera le tableau, tandis qu'attribuer un nombre plus grand ne tronquera pas le tableau.

Résumé

Pour des performances optimales, il est recommandé d'utiliser une boucle for au lieu d'une boucle for in et de mettre en cache la propriété length.

Il existe également des objets tableau qui n'ont aucune méthode, une seule longueur d'attribut unique. Les objets chaîne ont des méthodes de longueur ~~

É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