JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它易于阅读和编写,也易于机器解析和生成。在JavaScript中,我们可以使用内置的JSON对象来解析和生成JSON数据。
JSON数据的解析
JavaScript中的JSON对象提供了两个方法,用于将JSON数据解析成JavaScript对象或数组:
JSON.parse(text)
将JSON字符串解析成JavaScript对象或数组。
参数:JSON字符串。
返回值:JavaScript对象或数组。
JSON.parse(text, reviver)
将JSON字符串解析成JavaScript对象或数组,并可以通过reviver函数修改结果。
参数:
JSON字符串。
reviver函数:用于修改结果的回调函数,接受两个参数,key和value,分别代表当前处理的属性和属性值。函数可以返回新的属性值,或者返回undefined来删除属性。
返回值:JavaScript对象或数组。
下面是一个将JSON字符串解析成JavaScript对象的例子:
const jsonStr = '{"name":"张三","age":18}';
const jsonObj = JSON.parse(jsonStr);
console.log(jsonObj.name); // 输出:"张三"
console.log(jsonObj.age); // 输出:18
在这个例子中,我们使用JSON.parse方法将JSON字符串解析成了一个JavaScript对象,并打印出了对象中的两个属性name和age的值。
JSON数据的生成
JavaScript中的JSON对象还提供了一个方法,用于将JavaScript对象或数组转换成JSON字符串:
JSON.stringify(value)
将JavaScript对象或数组转换成JSON字符串。
参数:JavaScript对象或数组。
返回值:JSON字符串。
下面是一个将JavaScript对象转换成JSON字符串的例子:
const obj = {
name: '张三',
age: 18
};
const jsonStr = JSON.stringify(obj);
console.log(jsonStr); // 输出:"{"name":"张三","age":18}"
在这个例子中,我们使用JSON.stringify方法将JavaScript对象转换成了一个JSON字符串,并打印出了生成的字符串。