parsejson用法
一、简介
parsejson是JavaScript中的一个内置函数,它可以将一个JSON字符串解析成JavaScript对象。JSON是一种轻量级的数据交换格式,常用于前后端数据传输和存储。
二、语法
JSON.parse(text[, reviver])
参数说明:
text:必需,要被解析成JavaScript对象的JSON字符串。
javascript说明reviver:可选,用于转换解析出来的属性值。如果指定了该参数,每个属性值会被传入reviver函数进行转换和处理。如果返回undefined,则表示删除该属性;否则返回转换后的值。
三、示例
1. 解析简单的JSON字符串
var jsonStr = '{"name":"Tom","age":18,"gender":"male"}';
var jsonObj = JSON.parse(jsonStr);
console.log(jsonObj.name); // 输出Tom
console.log(jsonObj.age); // 输出18
console.der); // 输出male
2. 解析带有数组和嵌套对象的JSON字符串
var jsonStr = '{"name":"Tom","age":18,"gender":"male","hobbies":["reading","music"],"address":{"province":"Beijing","city":"Chaoyang"}}';
var jsonObj = JSON.parse(jsonStr);
console.log(jsonObj.hobbies[0]); // 输出reading
console.log(jsonObj.address.province); // 输出Beijing
3. 使用reviver参数转换解析出来的属性值
var jsonStr = '{"name":"Tom","age":18,"gender":"male"}';
var jsonObj = JSON.parse(jsonStr, function(key, value) {
if (key === 'age') {
return value + 1;
}
return value;
});
console.log(jsonObj.age); // 输出19
四、注意事项
1. JSON字符串中的属性名必须使用双引号包裹,不能使用单引号或不包裹。
2. JSON字符串中的值可以是字符串、数字、布尔值、null、数组或对象,但不能是函数或undefined。
3. 如果JSON字符串格式不正确,会抛出SyntaxError异常。
4. 如果JSON字符串中有循环引用(即某个对象的属性值指向该对象本身),会抛出TypeError异常。
5. parsejson函数对解析后的JavaScript对象没有进行深度克隆,也就是说修改解析后的JavaScript对象会同时修改原始JSON字符串对应的JavaScript对象。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论