Javascript 我能以更好的方式运行这个嵌套函数吗?
我只是想知道是否可以以更好的方式运行这些函数,我的意思是我不喜欢其中的函数集合:Javascript 我能以更好的方式运行这个嵌套函数吗?,javascript,jquery,Javascript,Jquery,我只是想知道是否可以以更好的方式运行这些函数,我的意思是我不喜欢其中的函数集合: setTimeout(function() { $(self.header_buttons_classes[0]).addClass(self.animations[15]); setTimeout(function() { $(self.header_buttons_classes[1]).addClass(self.animations[15]);
setTimeout(function() {
$(self.header_buttons_classes[0]).addClass(self.animations[15]);
setTimeout(function() {
$(self.header_buttons_classes[1]).addClass(self.animations[15]);
setTimeout(function() {
$(self.header_buttons_classes[2]).addClass(self.animations[15]);
setTimeout(function() {
$(self.header_buttons_classes[3]).addClass(self.animations[15]);
setTimeout(function() {
$(self.header_buttons_classes[4]).addClass(self.animations[15]);
setTimeout(function() {
$(self.header_buttons_classes[5]).addClass(self.animations[15]);
}, 500);
}, 500);
}, 500);
}, 500);
}, 500);
}, 500);
除了setTimeout外,还有一个函数允许您每X毫秒运行一次代码。您可以将代码简化如下:
var i = 0;
var total = self.header_buttons_classes.length;
var x = setInterval(function() {
if(i == total) {
clearInterval(x);
} else {
$(self.header_buttons_classes[i]).addClass(self.animations[15]);
i++;
}
}, 500);
感谢@PaoloBergantino,在无限循环中运行函数时,我通常使用
setInterval()
)