有如此json字符串:
var jsondata = '{"staff" : [{"name" : "洪七", "age" : 70},{"name" : "郭靖", "age" : 35},{"name" : "黃蓉", "age" : 30}]}';
一、eval解析
var jsonobj = eval('(' + jsondata + ")");
alert(jsonobj.staff[0].name);
二、javascript自帶方法解析
var jsonobj = JSON.parse(jsondata);
alert(jsonobj.staff[0].name);
eval存在一定的風險性,如果不是確定返回的json字符串格式,建議不要使用,例如
var jsondata = '{"staff" : [{"name" : "洪七", "age" : 70},{"name" : "郭靖", "age" : alert(123)},{"name" : "黃蓉", "age" : 30}]}';
如果在上述的json字符串中存在中上面紅色的地方,其會將其先執行