このJavaScript再帰関数を取得しました:
function doStuff(graphName) {
var groupArray = new Array();
groupArray[0] = "hour";
groupArray[1] = "day";
groupArray[2] = "month";
for(var i = 0; i < groupArray.length; i++) {
$.get("getchartdata", {"graphName" : graphName, "subgroup" : groupArray[i]})
.done(function(jsonData){
var data = eval(jsonData);
drawChart(data, data[0][0], data[0][1]);
});
}
setTimeout(doStuff, 10000);
}
ここでの問題は、最初はうまく機能することですが、10 秒後に再試行するとエラーが表示されます。
TypeError: data[0] is undefined in drawChart(data, data[0][0], data[0][1]);
なぜこれが起こっているのでしょうか?
パラメータを追加するとsetTimeout(doStuff(graphName), 10000);
ブラウザがクラッシュします。
ありがとう。