在JavaScript的模块模式中如何使用setTimeout函数?
这里是示例。
HTML:<div id="container1"></div>
JavaScript:
var classA = (function() {
var i = 0;
var names = ["a", "b", "c", "d", "e", "f"];
var callTest = function() {
for (var n in names) {
window.setTimeout(function() {
callTest2(names[n]);
}, 1000);
}
};
var callTest2 = function(pName) {
$("#container1").append("In callTest " + i+++" " + pName + "<br>");
window.setTimeout(function() {
callTest2(pName)
}, 10000)
};
return {
testTheTest: function() {
callTest();
}
}
})();
classA.testTheTest();
框架:jQuery 1.5.2
执行后的输出结果为:
In callTest 0 f
In callTest 1 f
In callTest 2 f
In callTest 3 f
In callTest 4 f
In callTest 5 f
改为:
In callTest 0 a
In callTest 1 b
In callTest 2 c
In callTest 3 d
In callTest 4 e
In callTest 5 f
我错过了什么?我做错了什么?