Il est certain que ces conditions produisent le même résultat :
if (key in object)
if (object.hasOwnProperty(key))
Y a-t-il une raison de préférer une voie à une autre ?
Il est certain que ces conditions produisent le même résultat :
if (key in object)
if (object.hasOwnProperty(key))
Y a-t-il une raison de préférer une voie à une autre ?
L'autre forme (appelée dans) énumère les noms de propriétés (ou clés) d'un objet. A chaque itération, une autre chaîne de noms de propriétés de l'objet est assignée à la variable. Il est généralement nécessaire de tester object.hasOwnProperty(variable) afin de déterminer si le nom de la propriété est réellement un membre de l'objet ou a été trouvé à la place sur la chaîne des proto- type.
for (myvar in obj) {
if (obj.hasOwnProperty(myvar)) { ... } }
Emprunté de Javascript The Good Parts By Crackford
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.