JavaScript loop through JSON array?

javascript, json

Solution

Your JSON should look like this:

let json = [{
    "id" : "1", 
    "msg"   : "hi",
    "tid" : "2013-05-05 23:35",
    "fromWho": "hello1@email.se"
},
{
    "id" : "2", 
    "msg"   : "there",
    "tid" : "2013-05-05 23:45",
    "fromWho": "hello2@email.se"
}];

You can loop over the Array like this:

for(let i = 0; i < json.length; i++) {
    let obj = json[i];

    console.log(obj.id);
}

Or like this (suggested from Eric) be careful with IE support

json.forEach(function(obj) { console.log(obj.id); });

Problem

I am trying to loop through the following json array: ``` { "id": "1", "msg": "hi", "tid": "2013-05-05 23:35", "fromWho": "hello1@email.se" }, { "id": "2", "msg": "there", "tid": "2013-05-05 23:45", "fromWho": "hello2@email.se" } ``` And have tried the following ``` for (var key in data) { if (data.hasOwnProperty(key)) { console.log(data[key].id); } } ``` But for some reason I'm only getting the first part, id 1 values. Any ideas?

Original source

Related problems