我們知道JSON.parse能將JSON字符串轉變成JS對象,但在一些轉換中可能出現Unexpected token ' in JSON at position 1的錯誤,這是因為被轉換的值不符合JSON格式而造成的。
JSON官方明確規定,JSON數據的key與value必須使用雙引號""包裹,否則在轉換過程中會導致錯誤。
// 數組 let a = '["a","b","c"]';// √ let b = "['a','b','c']";// X // 對象 let a1 = '{"name":"聽風是風","age":"26"}';// √ let b1 = "{'name':'聽風是風','age':'26'}";// X console.log(JSON.parse(a))// Array console.log(JSON.parse(a1))// Object console.log(JSON.parse(b))// 報錯 console.log(JSON.parse(b1))// 報錯
