nu wil ik een methode setUsers()
maken die een sleutel/waarde-paar-object neemt en de variabele user
initialiseert.
setUsers = function(data) {
// loop and init user
}
waar gegevens zijn zoals:
234: "john", 23421: "smith", ....
Antwoord 1, autoriteit 100%
Pas op voor eigenschappen die zijn overgenomen van het prototype van het object (wat kan gebeuren als u bibliotheken op uw pagina opneemt, zoals oudere versies van Prototype). U kunt dit controleren door de hasOwnProperty()
-methode van het object te gebruiken. Dit is over het algemeen een goed idee bij het gebruik van for...in
loops:
var user = {};
function setUsers(data) {
for (var k in data) {
if (data.hasOwnProperty(k)) {
user[k] = data[k];
}
}
}
Antwoord 2, autoriteit 47%
for (var key in data) {
alert("User " + data[key] + " is #" + key); // "User john is #234"
}
Antwoord 3, autoriteit 7%
Zoiets:
setUsers = function (data) {
for (k in data) {
user[k] = data[k];
}
}