JavaScript-json
JavaScript数据转换为json格式
1
| JSON.stringify(value, [replacer], [space])
|
value
: 要转换的JavaScript值,通常是一个对象或数组.
replace
: 可选,如果该参数是一个函数,则在转化过程中,被转化的值的每个属性都会经过该函数的转换和处理;如果该参数是一个数组,则只有包含在这个数组中的属性名才会被转化到最终的 JSON 字符串中;如果该参数为 null 或者未提供,则对象所有的属性都会被转化。
sapce
: 指定缩进用的空白字符串,用于美化输出;如果参数是个数字,它代表有多少的空格;上限为10。该值若小于1,则意味着没有空格;如果该参数为字符串(当字符串长度超过10个字母,取其前10个字母),该字符串将被作为空格;如果该参数没有提供(或者为 null),将没有空格。
返回值
:一个给定值的JSON字符串。
例子:
1 2 3 4 5 6 7 8 9 10 11 12 13
| let user = { name: "lss", age: 18, id: '02', score: { '数学': 90, '化学': 90 } }
let json = JSON.stringify(user, ['name', 'age'], 4); console.log(json);
|
value值为user是对象类型,replace为[‘name’, ‘age’]表示要转化的属性为name和age,space为4表示4个空格。
1 2 3 4
| { "name": "lss", "age": 18 }
|
json数据转化为JavaScript数据
1
| JSON.parse(json, [reviver])
|
JSON.parse()
方法用来解析JSON字符串,解析为JavaScript值或对象。
json
:需要转化的json字符串
reviver
:可选的函数,用以在返回之前对所得到的对象执行操作。当前属性名和属性值会分别作为第一个和第二个参数传入 reviver
中。如果 reviver
返回 undefined
,则当前属性会从所属对象中删除,如果返回了其他值,则返回的值会成为当前属性新的属性值。