Javascript Json解析
问题描述:
我在JavaScript中使用Json。我正在从test.js阅读json。我如何阅读for(;;)
。Javascript Json解析
<script type="text/javascript">
$.getScript('ajax/test.js', function(data, textStatus){
jQuery.each(data, function(return) {
alert(return.name);
alert(return.surname)
});
});
</script>
-
测试JS
for (;;);
{
"name" : "Mustafa Can",
"surname" : "Pala"
};
答
需要调用$.get
获取的脚本作为字符串的内容,然后取出for(;;);
:
$.get('ajax/test.js', function(data, textStatus){
var json = data.replace(/^for\(;;\);/, "");
var obj = $.parseJSON(json);
alert(obj.name);
alert(obj.surname)
}, 'text');
+0
谢谢SLaks。为什么你使用'文本'格式? –
+0
@Gürkan:防止jQuery将其解析为JSON(这将失败)或将其作为Javsacript(将冻结)执行它 – SLaks
+0
再次感谢SLaks。 –
你能请清除这个? “我怎样才能读取(;;)”是什么意思? – Coffee
更改test.js,因为这只是无效的JSON。 –
@Matt:这是一种反XSS技术 – SLaks