C'est juste ça. J'ai regardé en ligne et j'ai regardé StackOverflow et je ne vois personne parler de ça.JavaScript Pour ... dans ... renvoie hasObject?
Est-il normal lorsqu'un tableau est construit comme:
_e = Array();
_e[0] = 'admin_adv_from_date_month';
_e[1] = 'admin_adv_from_date_day';
_e[2] = 'admin_adv_from_date_year';
_e[3] = 'admin_adv_to_date_month';
_e[4] = 'admin_adv_to_date_day';
_e[5] = 'admin_adv_to_date_year';
que lorsque vous exécutez à travers elle comme ceci:
enableElements : function(elements)
{
for (var e in elements)
{
hForm.enableElement(elements[e]);
}
}
La dernière chose que e est réglé sur est « hasObject » dans mon code. Je devais mettre en place un garde en sécurité dans « enableElement », comme dans ce cas e renvoie null comme « hasObject » devient une fonction:
enableElement : function(element)
{
var e = document.getElementById(element);
if (e)
{
e.disabled = false;
}
}
Je suis en cela sur le dernier Safari. Oui, je sais que je pourrais utiliser toutes sortes de navigateurs alternatifs qui peuvent faire toutes sortes de trucs whizbang, mais Safari est ce que j'utilise pour ce projet.
Est-ce un comportement normal du navigateur? Pourquoi cela pourrait-il arriver?
Ah oui, je dois utiliser la boucle traditionnelle. Merci de me corriger et de me mettre sur la bonne voie.A appris quelque chose aujourd'hui :-) – Asher
Juste fini de taper un court roman sur ce http://stackoverflow.com/questions/4261051/javascript-why-for-in-is-a-bad-practice/4273208#4273208 ne me fais pas écrire un autre! :-) BTW, '_e = ['admin_adv_from_date_month', 'admin_adv_from_date_day', 'ainsi de suite']' –