1
我知道setTimeOut的最佳做法是發送一個匿名函數,並在函數中添加我想要重做的函數。 爲什麼它不工作?將參數傳遞給遞歸函數javaScript
function movement(dir) {
...
...
setTimeOut(function(){movement(dir);},21);
我知道setTimeOut的最佳做法是發送一個匿名函數,並在函數中添加我想要重做的函數。 爲什麼它不工作?將參數傳遞給遞歸函數javaScript
function movement(dir) {
...
...
setTimeOut(function(){movement(dir);},21);
它會工作。當然,該函數的名稱是setTimeout()
而不是setTimeOut()
。看到這個例子:
function movement(dir) {
console.log(dir);
if (dir++ < 5) {
setTimeout(function() {
movement(dir);
}, 21);
}
};
movement(1);
它打印:
1
2
3
4
5
它的工作:http://jsfiddle.net/8neft/ – Amberlamps