为了账号安全,请及时绑定邮箱和手机立即绑定

json格式数据解析两种方式

json格式数据解析两种方式:eval() ,JSON.parse();

eval :解析时会自动执行json数据中可执行的方法;eval('(' +json+')')

        这样自动执行非常危险;

JSON.parse():当json数据中存在可执行方法,会抛出语法错误 SyntaxError;


在线json语法校验工具:jsonlint.com;

正在回答

2 回答

我觉的json中包含可执行代码这个是无解的。老师讲的,可执行代码放在age里,但是他引用的是name属性。

如果你引用的数据正好包含可执行代码,也会被执行。比如下面的代码,也会弹出alert错误:

var jsondata = '{"staff":[{"name":"alert(错误)","age":70},{"name":"郭靖","age":35},{"name":"黄蓉","age":30}]}'

var jsonobj = JSON.parse(jsondata);

alert(jsonobj.staff[0].name);

0 回复 有任何疑惑可以回复我~

很好,有什么问题吗?


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Ajax全接触
  • 参与学习       224758    人
  • 解答问题       708    个

本课程通过一个案例,讲解Ajax的相关概念原理实现方式和应用

进入课程

json格式数据解析两种方式

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号