JSON格式,(简写JavaScript Object Notation),是一种用于数据交换的文本格式,书写简单。 基于JavaScript原生语法,能够序列化对象、数组、数值、字符串、布尔值和 null。 在ES5中,增加了一个JSON对象,专门用来处理JSON格式的数据。 JSON是一个对象,但只有两个方法:parse 和 stringify ,不能作为构造函数,也无属性。
JSON.parseJSON.parse() 用来解析JSON字符串,得到对应的JavaScript值或对象。
JSON.parse('{}') // {}JSON.parse('true') // trueJSON.parse('null') // null
JSON.parse 语法JSON.parse(text[, reviver]) - text:要被解析成的字符串。
如果传入数字则会转换成十进制数字输出。 如果传入布尔值则直接输出。 如果传入null则输出null。 不支持其他类型的值,否则报错。 - reviver: 可选,转换器, 可以用来修改解析生成的原始值。
返回值: JavaScript对象/值, 对应给定JSON文本的对象/值。
reviver 参数reviver函数,用于转换处理解析到的JavaScript值,处理完后返回最终的结果。 转换过程: 对于reviver函数的两个参数 key 和 value ,不同的数据类型: 基本类型的转换: JSON.parse('5', function (key, value) { console.log(`key:${key}, value:${value}`)})// key:, value:5JSON.parse('null', function (key, value) { console.log(`key:${key}, value:${value}`)})// key:, value:nullJSON.parse('{}', function (key, value) { console.log(`key:${key}, value:`, value)})// key:, value:{} Object对象和数组: |