json字符串,json对象,json数组对象,json数组类型字符串的区别
1.json类型的字符串转化为json对象
var jsonString='{"name":"张三","age":"18"}'//json类型的字符串
var jsonObj=JSON.parse(jsonString);//json类型的字符串转化为json对象
alert(jsonObj);//[object Object]
alert(jsonObj.name);//张三
2.json对象转化为json类型的字符串
var jsonString=JSON.stringify(jsonObj)//json对象转化为json类型的字符串 alert(jsonString);//{"name":"张三","age":"18"}//json字符串不可以直接取值,要转化为json对象才可以
var jsonObj = eval('(' +jsonString+ ')');//第一种
var jsonObj = JSON.parseJSON(jsonString);//第二种
alert(jsonObj.name)//张三
或者alert(jsonObj["name"])//张三
ps:如果obj本来就是一个JSON对象,那么运用 eval()函数转换后(哪怕是多次转换)还是JSON对象,但是运用 parseJSON()函数处理后会有疑问(抛出语法异常)。
3.json数组类型字符串转json对象
var jsonArray='[{"name":"张三","age":"18"},{"name":"张三","age":"19"}]'; //json数组类型字符串 alert(jsonArray);//[{"name":"张三","age":"18"},{"name":"张三","age":"19"}] var jsonArrayToObject=JSON.parse(jsonArray);//json数组类型的字符串转json对象 alert(jsonArrayToObject);//[object Object],[object Object]
for(var i=0;i<jsonArrayToObject.length;i++){
alert(jsonArrayToObject[i].age)//18,19
}
4.json数组类型的对象
var jsonArrayObj=[{"name":"张三","age":"18"},{"name":"张三","age":"19"}];//json数组类型对象
alert(jsonArrayObj)//[object Object],[object Object]
for(var i=0;i<jsonArrayObj.length;i++){
alert(jsonArrayObj[i].age)//18,19第一种方式
alert(jsonArrayObj[i]["age"])//18,19第二钟方式
}

浙公网安备 33010602011771号