一、json的定义
json
是由键值对组成,并且由花括号包围。每个键由引号引起来,键和值之间使用冒号进行分隔, 多组键值对之间进行逗号进行分隔。
// json的定义
var jsonObj = {
"key1":12,
"key2":"value2",
"key3":true,
"key4":[1,"a",false],
"key5":{
"key5_1":"value5_1",
"key5_2":123,
},
"key6":[{
"key6_1_1":"value6_1_1",
"key6_1_2":111,
},{
"key6_2_1":"value6_2_1",
"key6_2_2":222,
}]
}
二、json的访问
json
本身是一个对象,json
中的 key
我们可以理解为是对象中的一个属性,key
访问就跟访问对象的属性一样。
alert(typeof(jsonObj));// object json 就是一个对象
alert(jsonObj.key1); //12
alert(jsonObj.key4);// 得到数组[1,"a",false]
// json 中 数组值的遍历
for(var i = 0; i < jsonObj.key4.length; i++) {
alert(jsonObj.key4[i]);
}
alert(jsonObj.key5.key5_1);
alert( jsonObj.key6 );// 得到 json 数组
// 取出来每一个元素都是 json 对象
var jsonItem = jsonObj.key6[0];
alert( jsonItem.key6_1_1 );
三、json的两个常用方法
json
的存在有两种形式
- 以对象的形式存在。
- 以字符串的形式存在。
一般要操作 json
中的数据的时候,需要 json
对象的格式。要在客户端和服务器之间进行数据交换的时候,使用 json
字符串。
// json对象转字符串
var jsonObjString = JSON.stringify(jsonObj);
alert(jsonObjString);
// json字符串转json对象
var jsonObj2 = JSON.parse(jsonObjString);
alert(jsonObj2);