J'ai étendu le tableau pour prendre en charge indexOf dans IE en utilisant this JavaScript function from Mozilla MDC.Fonction ajoutée à Array en JavaScript, comment garder la fonction hors de ... dans?
Malheureusement, lors de l'utilisation de la syntaxe ... pour parcourir le tableau, la boucle s'arrête sur indexOf au lieu d'index numériques. Est-ce que je peux garder indexOf hors de pour ... dans la syntaxe dans Internet Explorer (il le fait dans Chrome)?
Qu'est-ce qui rend la propriété Array.length et les autres fonctions Array si spéciales que la boucle for ... in les ignore?
Je sais que le passage à la norme pour la syntaxe est une solution, mais je préférerais un pour ... dans le correctif.
la solution ne doit pas être utilisée pour itérer sur le réseau. la raison pour laquelle la longueur et les autres propriétés n'apparaissent pas est due à l'attribut interne ['DontEnum'] (https://developer.mozilla.org/en/ECMAScript_DontEnum_attribute) dans ES3. ES5 normalise ce comportement, donc vous pouvez aussi rendre vos propriétés non-énumérables. – Anurag
Je ne peux pas contrôler ce que les autres personnes font avec ce fichier JS. Ils peuvent décider d'utiliser pour ... sur Array pendant que cela est inclus. – getWeberForStackExchange
Voir http://stackoverflow.com/questions/2636453/is-it-possible-to-create-a-hidden-property-in-javascript –