JSON.parse()
JSON.parse()
方法用来解析JSON字符串,构造由字符串描述的JavaScript值或对象。提供可选的 reviver 函数用以在返回之前对所得到的对象执行变换(操作)。
语法
JSON.parse(text[, reviver])
参数
text
- 要被解析成 JavaScript 值的字符串,关于JSON的语法格式,请参考:
JSON
。 -
reviver
可选 - 转换器, 如果传入该参数(函数),可以用来修改解析生成的原始值,调用时机在 parse 函数返回之前。
返回值
Object
类型, 对应给定 JSON 文本的对象/值。
异常
若传入的字符串不符合 JSON 规范,则会抛出 SyntaxError
异常。
(摘自MDN)
示例
1 localStorage.setItem(‘historySearch‘,‘["apple","orange"]‘); 2 3 // JSON.parse()返回Object类型,即JSON文本对应的对象(对象,数组)/值 4 let arr1 = JSON.parse(localStorage.getItem(‘historySearch‘)) 5 console.log(arr1 instanceof Array); // true 6 console.log(arr1.toString()); // apple,orange 7 8 // 若传入的字符串不符合 JSON 规范,则会抛出 SyntaxError 异常。 9 localStorage.setItem(‘history‘,‘```‘); 10 let str1 = JSON.parse(localStorage.getItem(‘history‘)); 11 console.log(str1);// Uncaught SyntaxError: Unexpected token ` in JSON at position 0