Возможно это: http://api.jquery.com/jQuery.parseJSON/
var obj = jQuery.parseJSON('{"name":"John"}');
alert( obj.name === "John" );
... ну, конечно, это только если вы хотите использовать jQuery 1.4. :) Я думаю, что встроенная функциональность JSON является довольно новым дополнением к браузерам, которые на самом деле пытаются реализовать стандарты.
Редактировать
Точно так же вы можете превратить строку JSON в объект JavaScript, вызвав для него функцию «eval»:
var obj = eval('({"name":"John"})');
alert( obj.name === "John" );
Это должно дать тот же результат, что и jQuery parseJSON выше. Разница в том, что JavaScript-функция «eval» будет запускать любой код внутри, поэтому, если источником вашего JSON является внешний сайт или другой ненадежный источник, этот источник может внедрить вредоносный код в строку, которая, как вы ожидаете, будет содержать только JSON.
Я полагаю, что существует новая рекомендация о том, что браузеры должны реализовывать встроенный синтаксический анализ JSON, который обеспечит принудительный литеральный формат объекта JavaScript в строке, что обеспечит безопасную альтернативу "eval".
Редактировать 2
Никогда фактически не используя eval
для обработки JSON, я неправильно предположил, что мой пример будет работать. Это исправлено с добавлением окружающих скобок.