json格式數據解析兩種方式
json格式數據解析兩種方式:eval() ,JSON.parse();
eval :解析時會自動執(zhí)行json數據中可執(zhí)行的方法;eval('(' +json+')')
????????這樣自動執(zhí)行非常危險;
JSON.parse():當json數據中存在可執(zhí)行方法,會拋出語法錯誤 SyntaxError;
在線json語法校驗工具:jsonlint.com;
json格式數據解析兩種方式:eval() ,JSON.parse();
eval :解析時會自動執(zhí)行json數據中可執(zhí)行的方法;eval('(' +json+')')
????????這樣自動執(zhí)行非常危險;
JSON.parse():當json數據中存在可執(zhí)行方法,會拋出語法錯誤 SyntaxError;
在線json語法校驗工具:jsonlint.com;
2015-08-10
舉報
2018-07-19
我覺的json中包含可執(zhí)行代碼這個是無解的。老師講的,可執(zhí)行代碼放在age里,但是他引用的是name屬性。
如果你引用的數據正好包含可執(zhí)行代碼,也會被執(zhí)行。比如下面的代碼,也會彈出alert錯誤:
var jsondata = '{"staff":[{"name":"alert(錯誤)","age":70},{"name":"郭靖","age":35},{"name":"黃蓉","age":30}]}'
var jsonobj = JSON.parse(jsondata);
alert(jsonobj.staff[0].name);
2015-12-19
很好,有什么問題嗎?