我有一个for循环,需要延迟每次重复以进行动画。如果我删除setTimeOut函数,下面的代码可以正常循环,变量正确地递增通过循环,然后执行底部代码行。但是使用setTimeOut函数后,底部代码会先执行,然后for循环执行7次(应该是6次),并在每次告诉我x = 6。显然我做错了什么。有什么想法吗?
for ( x = 0; x <= 5; x++) {
setTimeout(function() {
alert("For loop iteration #" + x);
}, 500 * x);
}
alert("Code to be executed after completed for loop");