Javascript 在对象内调用超时,立即调用函数
我为你做了一个JSFIDLE: 代码如下:Javascript 在对象内调用超时,立即调用函数,javascript,jquery,settimeout,Javascript,Jquery,Settimeout,我为你做了一个JSFIDLE: 代码如下: var chat = { init: function(){ setTimeout( comet , 10); } }; function comet() { alert('called'); } $(document).ready(function(){ chat.init(); }); 正如您所看到的,调用comet()时会立即忽略10秒的延迟,为什么?我正在按照setTimeout的要求传递c
var chat = {
init: function(){
setTimeout( comet , 10);
}
};
function comet()
{
alert('called');
}
$(document).ready(function(){
chat.init();
});
正如您所看到的,调用comet()时会立即忽略10秒的延迟,为什么?我正在按照setTimeout的要求传递comet,而不是comet(),但函数仍在执行。
我最初认为这是一个范围问题,所以我将comet移到了它自己的函数中,但这样做的结果是一样的
有人能解释一下原因吗?正如已经指出的,传递给
窗口的第二个参数。setTimeout
以毫秒为单位。
因此,您的代码应该是:
init: function(){
setTimeout( comet , 10000);
}
我想你是说10秒钟吧
阅读这里的更多内容:现在是10毫秒,请参阅手册:-)谢谢各位,我现在觉得自己很愚蠢。我曾经是盲人,现在我明白了。将在7分钟内接受。我为这件小事发疯了,没问题。容易犯的错误:)