0

XHR リクエストを通じて一連の JSON データを取得し、次のデータを取得します。

{"data_list" : [[1, "Title1", "0.54%"], [2, "Title2", "2.98%"]]}

次に、そのデータをループして、console.log を使用してコンソールに出力しようとします。

var len = json.data_list.length;
for(var i = 0; i < len; i++)
{
   console.log(json.data_list[i]);
}

しかし、私は同じパーセンテージを取得しません:

[1, "Title1", "0.24%"]
[2, "Title2", "0.00%"] 

最初の 2 つのフィールドで正しいデータが得られるのに、同じパーセンテージではない理由を知っている人はいますか? JSON 応答でパーセント記号を削除しても、間違った数値が返されます。

変数が有効であると仮定すると、json 変数を json.data_list にマップするライブラリを使用しています。

私はそれほど明るくない

どこかで XHR リクエストが Dojo によって壊れてしまいました。助けてくれてありがとう!

4

2 に答える 2

2

var len = json.data-list.length;JavaScript VM への減算操作のように見えます。この方法を使用する必要があります。json['data-list'].length.

このデータを返すメソッドを制御できない場合は、次のようにしてみてください。

var ajaxStr = '{"data-list" : [[1, "Title1", "0.54%"], [2, "Title2", "2.98%"]]}]';
ajaxStr = ajaxStr.replace(/\"([\w]+)-([\w]+)\"/g, "\"$1$2\"");
于 2013-07-17T19:37:29.987 に答える