Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
нотации объектов JavaScript (JSON) — это простой и упрощенный формат обмена данными, основанный на подмножестве нотации литерала объекта языка JavaScript. Подсистема JavaScript в Windows Internet Explorer 8 реализует предложение ECMAScript 3.1 JSON для собственных функций обработки JSON (который использует API json2.js ДугласА Крокфорда).
Internet Explorer 8 включает собственный объект JSON, который соответствует поддержке JSON, описанной в ES3.1, рабочий проект. Некоторые веб-страницы обнаруживают собственный объект JSON, а затем используют его в нестандартном режиме. Обычно это использование вызывает ошибку скрипта и нарушает обработку запросов AJAX. В следующем примере кода показан неправильный способ использования объекта JSON.
if(!window.JSON) JSON = myJSON;
JSON.encode(obj); // Not part of the standard
Вместо этого в следующем примере кода показан хороший способ использования объекта JSON.
JSON = myJSON;
JSON.encode(obj);
Windows Internet Explorer включает собственные поддержку для JSON, введя глобальный объект JSON с двумя встроенными методами: stringify и синтаксический анализ. Глобальный объект JSON определяется в подсистеме JavaScript и создается во время этапа инициализации ядра. Для обеспечения обратной совместимости эта функция доступна только в том случае, если веб-сайт использует последнюю версию функций JavaScript с помощью режима макета "Стандарты Internet Explorer 8" (документ). Эта функция также может повлиять на поведение веб-страниц, зависящих от глобальной переменной JSON или использования json2.js.
Вы можете переопределить глобальный объект JSON. Но если веб-страница использует режим макета "Стандарты Internet Explorer 8" (документ), он больше не является неопределенным объектом. Так как JSON создается в качестве глобального имени подсистемой JavaScript, проверяет значение if(!this). JSON)" оценивается как false и должен быть изменен в пользовательском коде.
Веб-страницы, использующие json2.js, скорее всего, не затронуты. В некоторых исключениях эти страницы должны работать быстрее. Исключения обусловлены различиями между реализацией JSON в Internet Explorer и json2.js. Например, во время сериализации собственная реализация JSON обнаруживает циклы и не проходит бесконечное рекурсии, например json.js. Дополнительные сведения об этих исключениях см. в блогах JavaScript.
Дополнительные сведения см. в документации по JSON и поддержке версий и поддержке версий ядра JavaScript.
Связанные разделы