私はJSONを使用しており、応答の要素の数を数えたいと思います。その結果、関数の変数のJS可視性
$.getJSON("/api/getEvents", function(data) {
$.each(data, function(key, event) {
var count = 10;
$.getJSON("/api/getUsers", function(data) {
$.each(data, function(key, event) {
alert("Value: " + count);
count++;
});
});
alert("Count: " + count);
});
});
、私が取得:
Value: 10
Value: 11
Value: 12
...
Count: 10
なぜ= 10を数えますか?
これは私が答えとして投稿しているわけではありませんが、$ .getJSONではクロージャを作成して変数カウントへの参照のみをキャプチャすると考えています。 – helpermethod
'getUsers'コールから' data'が空の配列であるように見えます。あなたはカウントを10に設定し、それを0回増分するとCount:10を警告します。 –
@BenLeeいいえ、配列は空ではありません。私はデータから要素の価値を得ることができます。 –