我不是那么喜欢JavaScript而且我有以下疑问与setTimeout()方法有关.
所以进入测试脚本我有:
function simpleMessage() {
alert("This is just an alert box");
}
// settimeout is in milliseconds:
setTimeout(simpleMessage, 5000);
Run Code Online (Sandbox Code Playgroud)
因此,当我执行页面时,在5秒后执行simpleMessage()函数,并显示警告弹出窗口.
我明白当我这样做时:
setTimeout(simpleMessage, 5000);
Run Code Online (Sandbox Code Playgroud)
这意味着simpleMessage()函数必须在定时器设置后5秒后执行,但为什么使用simpleMessage而不是simpleMessage()来进行函数调用?
simpleMessage是对函数的引用,而simpleMessage()执行函数.setTimeout需要一个函数引用来调用以后的时间.
为了使事情变得更加明显,你可以将函数声明编写为
// define my function (but don't execute it)
var myFunction = function() {
alert('SOUND THE ALARMS!');
};
// start a timer that will execute the given function after the given
// period of time
setTimeout(myFunction, 5000);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
61 次 |
| 最近记录: |