我找到了一种立即在 javascript 中运行间隔的解决方案,而不是等待第一个“超时”
setInterval(function hello() {
console.log('world');
return hello;
}(), 2500);
但问题是这个解决方案不起作用,就像这样的施工
(function () {
window.Banner = {
doMagic: function () {
setInterval(function magic() {
console.log('magic');
return magic;
}, 2500);
}
}
})();
Banner.doMagic();
我尝试返回 Banner 方法,为其命名并返回,但没有成功。
重点是,实际的构造要复杂得多,所以我不能只是将其重写为广泛提供的“返回 setTimeout”解决方案,因此找到我在这个问题上做错了什么将是非常完美的。
http://jsfiddle.net/5jawxLnr/3/ http://jsfiddle.net/5jawxLnr/3/
也许最正确的方法是将整个回调放在 setInterval 调用之外并将其放入单独的变量中:
(function () {
window.Banner = {
doMagic: function () {
var magic = function() {
console.log('magic');
};
setInterval(magic, 2500);
magic();
}
}
})();
Banner.doMagic();
效果与您的第一个代码相同,但这样您的代码会更干净一些。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)