[英]JSON.parse syntax issue with a string in array structure
我有一個簡單的字符串,其結構如下:
[[Home],[685,300],[800,380],[685,300],[Home]]
基本上是一組坐標,以創建路徑。 使用“ Home
是因為這會根據用戶在地圖上的位置而改變。
我面臨的問題是當我將其從PHP傳遞給JS時。
我對數據進行json_encode並像這樣傳遞:
[{"path":"[[Home],[685,300],[800,380],[685,300],[Home]]","id":"1"}]
然后我after
JSON.parse after
為其創建對象:
paths = {};
for(var i in data){
paths[data[i].id] = {}
paths[data[i].id].path = data[i].path;
}
問題是data[i].path
仍然只是一個字符串,而不是可用的數組。 因此,我嘗試添加輔助JSON.parse將字符串更改為如下所示的可用數組:
paths[data[i].id].path = JSON.parse(data[i].path);
但這導致:
Unexpected token H
H
顯然來自我放置在數組中的Home
,所以我想知道如何將其轉換為可用數組?
您的字符串不是有效的JSON。 Home
是該名稱的javascript標識符。 "Home"
是一個字符串。 引號丟失。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.