次のような構造の単純な文字列があります。
[[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用のオブジェクトを作成します。
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
いるので、それを使用可能な配列に変換するにはどうすればよいのでしょうか?