我的 JavaScript 代码需要延迟,但如果我在代码中创建超时函数,就会遇到问题。但是,如果我取出超时代码,它工作得很好。我在这里搜索了关于超时/延迟的另一篇文章,但我认为我的情况有点不同。
var myArray = new Array('Book One', 'Book Two', 'Book Three', 'Book Four');
x = myArray.length - 1;
(function myLoop(x) {
page = 3;
(function myLoop2(page) {
//setTimeout(function () {
var name = myArray[x];
alert(name + ' Page: ' + page);
if (--page) myLoop2(page);
//}, 1000 )
})(page);
if (x != 0) myLoop(--x);
})(x);
如果我删除代码中的注释,它会给我一个不同的输出。