
Envoyé par
SpaceFrog
et de toute façon ça me coller une erreur avec this[nr]
Bah... pas moi :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| user1 = {};
user1.nom = "DUPONT";
user1.prenom = "Jean";
user2 = {};
user2.nom = "DURAND";
user2.prenom = "Paul";
userArray={
setUser: function(nr,user){nr=nr.toString();this[nr]=user},
callUser: function(nr){ alert(nr);return (this[nr])?this[nr]:-1}
}
userArray.setUser("a",user1);
userArray.setUser("b",user2);
idUser= "a"
alert(userArray.callUser("a").nom)
idUser= "b"
alert(userArray.callUser("b").nom) |

Envoyé par
SpaceFrog
1 2 3
| user2 = {};
user2.nom = "DURAND";
user2.prenom = "Paul"; |
heu là je fais user2.nom , pas user2['nom'] ....
pourquoi je ne peux pas les faire dans le setter ???
Dans user1 et user2, tu affectes des propriétés 'nom' et 'prenom' à l'objet.
C'est pareil avec nr, tu affectes une propriété nr à userArray, mais toi, tu cherches les propriétés 'a' ou 'b', nr ne correspond donc plus à une propriété mais à une variable 
EDIT :
user2.nom == user2['nom'] != user2[nom]
Partager