2017-11-24 21 views
-1

私はPythonとフラスコで作業しています。私はすでにのpythonにおけるタプルの私のリスト持って :JSON形式でJavaScriptに(私のhtmlファイルから)にこれを渡すため"リストのタプル"、Pythonからjavascriptへ

[[[40.728410000000004, -73.99428], [40.728253333333335, -73.99441333333334], [40.72809666666667, -73.99454666666666], [40.727940000000004, -73.99468]], [[40.727940000000004, -73.99468], [40.72790666666667, -73.99470666666667], [40.727873333333335, -73.99473333333333], [40.72784, -73.99476]]] 

がnecesaryですが、これ、私のjavascriptのコードでは、私は、文字列を持っていますタプルのリストではありません。 Pythonで コード:JavaScriptで

encoded = json.dumps(ListOfTuples) 
output = {'vector': encoded} 
return jsonify(**output) 

結果、文字列。

"[[[40.728410000000004, -73.99428], [40.728253333333335, -73.99441333333334], [40.72809666666667, -73.99454666666666], [40.727940000000004, -73.99468]], [[40.727940000000004, -73.99468], [40.72790666666667, -73.99470666666667], [40.727873333333335, -73.99473333333333], [40.72784, -73.99476]]]" 

これはjavascriptでタプルのリストのように読む必要があります。

["[", "[", "[", "4", "0", ".", "7", "2", "8", "4", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "4", ",", " ", "-", "7", "3", ".", "9", "9", "4", "2", "8", "]", ",", " ", "[", "4", "0", ".", "7", "2", "8", "2", "5", "3", "3", "3", "3", "3", "3", "3", "3", "3", "5", ",", " ", "-", "7", "3", ".", "9", "9", "4", "4", "1", "3", "3", "3", "3", "3", "3", "3", "3", "4", "]", ",", " ", "[", "4", "0", ".", "7", "2", "8", "0", "9", "6", "6", "6", "6", "6", "6", "6", "6", "7", ",", " ", "-", "7", "3", …] 

がどのように私はJavaScriptでタプルの私のリストを取得することができます。

var arr = Object.values(ListOfTuplesInString); 

私はこれを持っている:私はこのコードを聖霊降臨祭、オブジェクトに変換しようとしていますが、動作していませんか?おかげさまで

+1

代わりにJSON.parse(ListOfTuplesInString)を試してください。タプルはJavaScriptには存在しないことに注意してください。すべてのリストですが、JSはそれらを配列として参照します。 –

+0

ありがとう@LukeK、まさに私が必要としていたものです。 – mikesneider

答えて

0

なぜJSONに2回変換しますか? json.dumpsとjsonifyで一度?

あなただけ行う必要があります。

return json.dumps({'vector': ListOfTuples}) 

次にチャンスが(正しいコンテンツタイプで発行)あなたのAjax呼び出しが有効なJSオブジェクトを返すこと良いだろう。しかし、後者は、あなたがJSへのデータの取得方法を提供していないため、推測に過ぎません。

+0

ありがとうフォーク、私はちょうどチュートリアルから答えをコピーします。しかし、私はこの方法で試してみますが、私が使用しようとするとエラーが発生します: 'JSON.parse(...)' – mikesneider

関連する問題