2010-08-22 1 views
20

Я пытаюсь получить некоторые данные через JSONP. Используя Firebug, я могу видеть, что данные корректно возвращаются, но мне тяжело думать, как мне его разобрать. Возврат данных - это действительно вложенный массив правильно? someFunction - это имя функции обратного вызова. Вот как выглядят данные:Как разобрать данные JSONP, возвращенные с удаленного сервера

someFunction([ 
{ 
     "title":"Sample Title", 
     "link":"http://example.com", 
     "description":"Sample Description", 
     "publisher":"Sample Publisher", 
     "creator":"Sample Author", 
     "date":"Thu, 19 Aug 2010 12:41:29 GMT", 
     "num_pages":10, 
     "num_results":"10" 
}, 
]); 

Немного смущенно о том, как правильно разбирать и выводить.

ответ

24

Вам не нужно разбирать данные. Это уже действительный объект JavaScript. Например, чтобы напечатать описание свойства первого объекта внутри SomeFunction

function someFunction(result) { 
    alert(result[0].description); // alerts "Sample Description" 
} 
2

Напишите функцию с правильным именем и правильными аргументами. Двигатель JS проведет синтаксический анализ для вас.

function someFunction(data) { 
    // Now data is an Array, containing a single 
    // Object with 8 properties (title, link, etc) 
} 
+0

Просто чтобы быть ясно: Для этого примера есть один объект с 8 свойствами, но и другие серверы могут возвращать JSON с несколькими объектами. Использование console.log (data) полезно для получения списка возвращаемых объектов. –

 Смежные вопросы

  • Нет связанных вопросов^_^