Dig*_*nDj 2 javascript settimeout
我真的认为这应该每100毫秒运行一次,但它只会发出一次哔哔声.
我知道setInterval,但这让我很困惑.
var test = function () {
console.log('beep')
setTimeout( test, 100 );
}();
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么这只运行一次而不是永远?
匿名函数在分配之前正在执行test.
您可以将其声明为命名函数表达式:
(function test() {
console.log('beep')
setTimeout(test, 100);
})();Run Code Online (Sandbox Code Playgroud)
或推迟调用函数直到赋值后:
var test = function() {
console.log('beep')
setTimeout(test, 100);
};
test();Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
149 次 |
| 最近记录: |