-5

私は配列をphpからjsに転送するためにあらゆる方法を使用しますが、最良の解決策は使用することです

JSON_encode($arr);

そして、それをデコードするすべての方法が失敗し、最終的にJavaScriptで受信したデータが次のようなものである場合に手動で行うことにしました: ["208","2812"] このJavaコードによって整数配列に変換されましたが、方法がわかりませんそれをjavascriptに転送します

String arr = "[\"208\",\"2507\"]";

//this its the output of him ["208","2507"]

String[] items = arr.replaceAll("\\[", "").replaceAll("\\]", "").split(",");

int[] results = new int[items.length];

for (int i = 0; i < items.length; i++) {

        results[i] = Integer.parseInt(items[i]);
}
4

2 に答える 2

1

次のような JSON 形式の文字列が与えられます。

var arr = "[\"208\",\"2507\"]";

次の方法で実際の配列を取得できます。

var items = JSON.parse(arr);

それには文字列が含まれていますが。文字列を整数に変換するには:

var results = items.map(function(v){return parseInt(v,10);});

または1行で:

var results = JSON.parse(arr).map(function(v){return parseInt(v,10);});

しかし、配列内の項目を整数にする必要がある場合は、最初に文字列ではなく整数を出力してみませんか?

var arr = "[208,2507]";

次に、必要なのは次のとおりです。

var results = JSON.parse(arr);
于 2012-12-04T01:41:09.217 に答える
0

JavaでもJSONを使用する必要がありました。

JavaScript では、次のようになります。

var arrstring = "[\"208\",\"2507\"]";
var items = JSON.parse(arrstring);
var results = [];
for (var i=0, i<items.length; i++)
    results[i] = parseInt(items[i], 10);
于 2012-12-04T01:39:33.720 に答える