var user = {}; now I want to create a setUsers() method that takes a key/value pair object and initializes the user variable.
setUsers = function(data) { // loop and init user } where data is like:
234: "john", 23421: "smith", .... 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]; } } } Object.keys(). If you need to support IE <= 8, for example, you're stuck with for...in.
{{},..}. When would I use this one instead of an array of objects[{},..]? ok, here is the answer, welcome to SO;).