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

Une brève discussion sur la différence entre les compétences for in et for each in in javascript_javascript

WBOY
Libérer: 2016-05-16 16:02:34
original
995 Les gens l'ont consulté

Différence 1 :

for in est publié en javascript 1.0.
For each in a été publié en JavaScript 1.6 dans le cadre de la norme E4X, alors qu'il ne fait pas partie de la norme ECMAScript.
​ ​ ​ Cela signifie qu'il y aura des problèmes de compatibilité avec différents navigateurs. pour chaque entrée, ce qui n'est pas pris en charge par de nombreux navigateurs. Par exemple, il ne prend pas en charge IE6, IE7, IE8 et autres navigateurs.

Différence 2 :

Exemple : var rectangle = { hauteur : "15", largeur : "25" };

  for (var i in 长方形){
    alert( i + "," + 长方形[i] );
  }
Copier après la connexion

Les résultats sont : hauteur, 15 ; largeur, 25 ;

  for each (var i in 长方形){
    alert( i + "," + 长方形[i] );
  }
Copier après la connexion

Les résultats sont : 15, non défini ; 25, non défini ;

Les valeurs de la variable i dans les deux méthodes de parcours sont différentes, car chacune ne peut pas obtenir le nom de l'attribut de l'objet, mais ne peut obtenir que la valeur de l'attribut.

Enfin, résumez les suggestions d'utilisation :

(1) Pour parcourir un tableau ordinaire, il est recommandé d'utiliser la méthode de traversée native pour. Ne soyez pas avide de commodité, car for in et for each in ont des problèmes de compatibilité avec le navigateur et ne peuvent pas garantir l'ordre dans lequel ils sont placés. parcourir le tableau (si la séquence est S'il n'y a aucune exigence, vous pouvez utiliser for in, mais je ne le recommande pas. Si vous êtes intéressé, vous pouvez lire l'article suivant "Une brève analyse des défauts). de pour dans en js".

(2) Traverser des objets. Puisque for ne peut pas fournir un parcours idéal, d'autres méthodes ne peuvent être choisies. Il est recommandé d'utiliser for in ici. D'après les différences expliquées ci-dessus, for in présente plus d'avantages que for each, car in peut obtenir des valeurs d'index et d'attribut, tandis que for each ne peut obtenir que des valeurs d'attribut. De plus, for each n'est pas disponible dans. de nombreux navigateurs de version inférieure ne sont pas pris en charge.

Ce qui précède représente l'intégralité du contenu de cet article, j'espère que vous l'aimerez tous

É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