我得到了这个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);
浏览器崩溃。
谢谢。