Как вставить данные в переменную JSON - PullRequest
0 голосов
/ 20 марта 2012

У меня есть переменная JSON, которая выглядит следующим образом:

{"events": [
{"event_id": "1", "event_name": "Breakfast"},
{"event_id": "1", "event_name": "Calling Bob"}
]}

Мне нужно добавить другой атрибут в каждом событии с помощью javascript и сделать так, чтобы он выглядел следующим образом:

{"events": [
{"event_id": "1", "event_name": "Breakfast", "event_type": "calendar"},
{"event_id": "1", "event_name": "Calling Bob", "event_type": "calendar"}
]}

Ответы [ 3 ]

5 голосов
/ 20 марта 2012

Если у вас есть

var obj = {"events": [....

тогда просто используйте

for (var i = 0; i < obj.events.length; ++i)
    obj.events[i].event_type = "calendar";

Или для оптимизации:

for (var i = 0, len = obj.events.length; i < len; ++i)
    obj.events[i].event_type = "calendar";
3 голосов
/ 20 марта 2012

Сначала преобразуйте его в Object:

var obj = JSON.parse(theJSON);

for(var i = 0; i < obj.events.length; ++ i)
    obj.events[i].event_type = "calendar";

theJSON = JSON.stringify(obj);
1 голос
/ 20 марта 2012
var yourJson = {"events": [
    {"event_id": "1", "event_name": "Breakfast"},
    {"event_id": "1", "event_name": "Calling Bob"}
]};

for(var eventKey in yourJson.events) {
    yourJson.events[eventKey]['event_type'] = 'calendar';
}
...