jQuery json парсинг

Как я анализирую этот json с jQuery?

DayEvents : [{"0":"886","event_id":"886","1":"5029","user_id":"5029","2":"Professional","user_type":"Professional", ...
8
задан jball 27 October 2010 в 06:10
поделиться

2 ответа

Термин «синтаксический анализ» немного неуместен, поскольку он уже находится в формате JSON. Вам не нужно его разбирать, а просто получить к нему доступ. Если бы это была большая строка в формате JSON, вам действительно нужно сначала проанализировать ее в пригодный для использования объект JSON перед доступом.

Этот JSON содержит одно свойство, DayEvents , которое, в свою очередь, содержит массив []. Вы можете получить доступ к свойствам, используя точку . оператор. Вы можете получить элемент массива по данному индексу, используя [index] , где ноль 0 обозначает первый элемент.

var json = { DayEvents : [{"0":"886","event_id":"886","1":"5029","user_id":"5029","2":"Professional","user_type":"Professional" }]};
var firstDayEvent = json.DayEvents[0];

Массив, в свою очередь, содержит объект {} . Или, может быть, больше одного? У вас может быть несколько элементов в массиве, тогда вы должны увидеть [{}, {}, {}, ...] , и тогда вы сможете получить доступ к каждому элементу в цикле следующим образом:

for (var i = 0; i < json.DayEvents.length; i++) {
    var dayEvent = json.DayEvents[i];
    // ...
}

Объект однодневного события имеет несколько свойств: 0 , event_id , 1 , user_id , 2 , и т. д. Вы не можете получить доступ к свойствам, начинающимся с числа, использующего точку . , тогда вы захотите использовать скобки:

var zero = firstDayEvent['0'];
var eventId = firstDayEvent.event_id;
var one = firstDayEvent['1'];
var userId = firstDayEvent.user_id;
var two = firstDayEvent['2'];
// ...

alert(eventId); // 886
alert(two); // Professional

Чтобы узнать больше о JSON, ознакомьтесь с в этом руководстве .

29
ответ дан 3 November 2019 в 12:49
поделиться

Украдено из .parseJSON() doc.

Пример:

Разбор строки JSON.

var obj = jQuery.parseJSON('{"name":"John"}');
alert( obj.name === "John" );

Код вашего примера, похоже, уже является объектом. Чтобы использовать и разобрать его с помощью parseJSON, нужно заключить его в скобки.

7
ответ дан 3 November 2019 в 12:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: