В моем JavaScript я хочу получить доступ к свойствам сериализованного объекта JSON, который был создан через веб-службу .NET. Как десериализовать данные JSON в объект, который я могу манипулировать в JavaScript?Как преобразовать сериализованный объект JSON в объект JS, чтобы я мог получить доступ к его свойствам?
ответ
Использование json2.js
из http://json.org - это обеспечивает JSON
объект на глобальный объект, который обеспечивает parse
функцию. Он имеет дополнительное преимущество в качестве основы для спецификации ES3.1 для JSON и, если возможно, будет использовать встроенную реализацию JSON. Это означает, что вы можете разобрать JSON сериализованную объект:
object = JSON.parse(string)
Из-за способа его реализации это означает, что если вы просмотре страницы в браузере, который поддерживает JSON (например, Safari 4, Firefox 3.5, даже IE8.) вы получите быстрый и безопасный парсер автоматически.
Вы можете использовать JQuery и сделать вызов веб-службы с помощью getJSON
Или вы могли бы использовать official json parser.
В настоящее время я использую Dojo. Знаете ли вы об эквивалентной функции в библиотеке Доджо? – Achilles
выглядит как функция dojo.fromJson, которая сделает это. –
Пробег: Dojo.json упаковка. Он содержит функции Json() и Json().
Вы не должны использовать eval(), если вы не действительно доверяете своему провайдеру данных. eval() может оценивать функции и вызывать их, может создавать случайные исключения и т. д. Используйте библиотеки, и вы будете на более безопасной стороне.
EDIT ::
crescentfresh отметил, что dojo.fromJson() является просто оболочкой для Eval(). Это правда, к сожалению, но даже при JSON.org они говорят, что Eval() может быть проблемой безопасности, и они должны знать, что они говорят о :)
Вы можете использовать внешний JSON парсер (см: code.google.com/p/json-sans-eval для пример), или просто использовать dojo.fromJson() и надеемся, что они будут улучшать его в следующей версии
Вот вся реализация '. Dojo.fromJson' ':' function (s) {return eval ("(" + s + ")")} '. Посмотрите сами: http://svn.dojotoolkit.org/src/tags/release-1.3.2/dojo/_base/json.js –
Нет причин включать еще одну библиотеку для использования 1 или 2 методов; просто сделайте, как говорит olliej ниже и перейдите на json.org и получите json2.js. – ken
- 1. Как использовать сериализованный объект JSON в js
- 2. JSON Объект к свойствам
- 3. Могу ли я передать неизвестный объект интерфейсу, чтобы я мог получить доступ к его свойствам на C#?
- 4. Laravel: объект не может получить доступ к его свойствам
- 5. Как получить доступ к слою, чтобы я мог его перевернуть?
- 6. Как преобразовать объект в сериализованный объект в контроллерах MVC
- 7. Невозможно преобразовать объект в массив и получить доступ к его свойствам
- 8. джексон сериализатору: получить сериализованный объект
- 9. Как получить доступ к свойствам строки XML, преобразованной в объект
- 10. Декодировать YAML-сериализованный объект
- 11. Как преобразовать объект JS в JSON?
- 12. Как преобразовать объект JS в JSON
- 13. Доступ к JSON проанализирован объект
- 14. Почему я не могу получить доступ к свойствам объекта JS?
- 15. Упорно сериализованный объект в Учении
- 16. Должен ли я преобразовать примитив в объект, если я хочу получить доступ к его свойствам (объектам) много раз?
- 17. Как изменить сериализованный объект?
- 18. CakePHP - Как я мог получить связанный объект?
- 19. Как дочерний объект может получить доступ к свойствам своего родителя?
- 20. JSON доступ к свойствам объекта проблема
- 21. JS: преобразовать строку в объект
- 22. Как преобразовать массив json в json-объект в js
- 23. JS: как преобразовать строку в объект JS (** NOT ** в JSON)?
- 24. Объект Javascript, обращающийся к его свойствам
- 25. Как создать объекты в Javascript, чтобы я мог позже получить доступ к их свойствам?
- 26. Как сохранить ответ API в объект, чтобы я мог использовать его позже в скрипте?
- 27. Как преобразовать объект JSON в объект JavaScript
- 28. JSON.parse не удается преобразовать его в объект
- 29. Как преобразовать JSON в объект?
- 30. Как преобразовать объект JSON в объект Angular?
Возможный дубликат [Сериализация в JSON в jQuery] (http://stackoverflow.com/questions/191881/serializing-to-json-in-jquery) – outis