How to loop through key/value object in Javascript?
Beware of properties inherited from the object's prototype (which could happen if you're including any libraries on your page, such as older versions of Prototype). You can check for this by using the object's hasOwnProperty()
method. This is generally a good idea when using for...in
loops:
var user = {};
function setUsers(data) {
for (var k in data) {
if (data.hasOwnProperty(k)) {
user[k] = data[k];
}
}
}
for (var key in data) {
alert("User " + data[key] + " is #" + key); // "User john is #234"
}
Something like this:
setUsers = function (data) {
for (k in data) {
user[k] = data[k];
}
}