Javascript Json解析
我在javascript中使用Json。我正在从test.js读取json。如何阅读(;)的Javascript Json解析,javascript,jquery,Javascript,Jquery,我在javascript中使用Json。我正在从test.js读取json。如何阅读(;)的 <script type="text/javascript"> $.getScript('ajax/test.js', function(data, textStatus){ jQuery.each(data, function(return) { alert(return.name); alert(return.su
<script type="text/javascript">
$.getScript('ajax/test.js', function(data, textStatus){
jQuery.each(data, function(return) {
alert(return.name);
alert(return.surname)
});
});
</script>
您需要调用$。get
以字符串形式获取脚本内容,然后删除(;;)的代码>:
你能把这个弄清楚吗?我如何读取(;)
的意思是什么?更改test.js,因为那不是有效的JSON。@Matt:它是反XSS的technique@SLaks真的吗[需要引证]
@Matt:它防止攻击者在定义属性设置器后将JSON包含在脚本标记中,以便拦截数据。@Gürkan:防止jQuery将其解析为JSON(将失败)或将其执行为Javscript(将冻结)
for (;;);
{
"name" : "Mustafa Can",
"surname" : "Pala"
};
$.get('ajax/test.js', function(data, textStatus){
var json = data.replace(/^for\(;;\);/, "");
var obj = $.parseJSON(json);
alert(obj.name);
alert(obj.surname)
}, 'text');