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