1.json的认识
json是javascript对象表示法,用于存储和交换文本信息,类似于xml,但比xml更小,解析更快。
json对象是以键值对形式的字符串表示的。
2.json对象的表示
json对象的数据是键值对形式的,名称和值用冒号隔开,数据与数据之间用逗号隔开。
json对象是用{}包裹的,[]包裹的是数组。
a.json对象表示法:
b.json数组表示法:
3.json对象和字符串相互转换
a.将字符串转换为json对象
(1)使用eval()方法将字符串转换为json对象
格式为:var jsonObj = eval("("+str+")");
(2)使用字符串的parseJSON()方法
格式为:var jsonObj = str.parseJSON();
(3)使用JSON类的parse()方法
格式为:var jsonObj = JSON.parse(str);
b.将json对象转为字符串
(1)使用json对象的toJSONString()方法
格式为:var str = jsonObj.toJSONString();
(2)使用JSON类的stringify()方法
格式为:var str = jsonObj.stringify();
注意:需要导入json.js
4.json获取值的方式
a.通过对象.属性获取
例如:如需获取上面例子中的jsonObject对象的name属性的值。
var objName = jsonObject.name;
b.通过对象["属性名获取"]
例如:如需获取上面例子中jsonObject对象的age属性的值 。
var objAge = jsonObject["age"];
特殊说明:json对象将每一个大括号包裹的属性名整体作为一个对象,当属性名为分割字段时不能使用.去取值。
上例中,通过中括号取值的结果为:
如果使用dataJson.personDto.person.personId取值将无法识别对象,或出现js错误。