Le 19/04/2008 20:45, Une Bévue a écrit :
supposons que j'ai deux objets "identiques", càd avec les mêmes couples
de propriété/valeur :
var o1={element:one, type:'keyup',code:82,action:setToRed};
var o2={element:one, type:'keyup',code:82,action:setToRed};
"one" étant une référence à une DIV Element et "setToRed" une fonction.
si je fais alert(o1===o2) ça me dit false ???
pourquoi ???
Parce que le paragraphe 11.9.6 de la norme dit que ça doit être le cas
pour des objets qui ne sont pas de type Undefined, Null, Number, String
ou Boolean, et qui ne sont ni « le même objet » ni « des objets joints »
(au sens du paragraphe 13.1.2). C'est d'ailleurs le principal intérêt de
l'opérateur ===.
Voir les paragraphes que j'ai cités dans
<
http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf>.