Ответов (5)5
Вы действительно хотите выполнить код Javascript (который всегда будет в некоторой степени небезопасным) или вы пытаетесь преобразовать JSON из строки в объект?
В первом случае eval () по-прежнему будет вашим лучшим выбором.
В последнем случае jQuery сделает это за вас как часть запроса AJAX, или вы можете использовать специальный подключаемый модуль JSON для преобразования между строкой и объектом без риска выполнения произвольного кода.
$.globalEval()
?
http://api.jquery.com/jQuery.globalEval/
В документации говорится, что он ведет себя совершенно иначе eval()
, но это наиболее близкое совпадение, если вы хотите передать свои оценки через jQuery.
а) Чтобы загрузить и выполнить код JS:
$.getScript( url, [ success(data, textStatus) ] )
см. http://api.jquery.com/jQuery.getScript/
б) Чтобы разобрать JSON:
$.parseJSON( json )