📜  承诺 settimeout (1)

📅  最后修改于: 2023-12-03 15:25:50.972000             🧑  作者: Mango

承诺 settimeout

在JavaScript中,setTimeout()是一种相对简单但很有用的函数。它用于设置稍后执行的代码。也就是说,它允许您在一段时间后延迟执行程序的代码。

语法

setTimeout()的语法如下所示:

setTimeout(callback, delay, [arg1, arg2, ...]);

参数说明:

  • callback: 必选参数。要执行的方法或代码块。
  • delay: 可选参数。执行前等待的毫秒数。如果省略,则默认为0。
  • arg1, arg2, ...: 可选参数。传递给回调函数的参数。如果您需要一个以上的参数,则以逗号分隔它们。

例如:

setTimeout(function(){
  console.log('Hello, World!');
}, 2000);

上述代码将在2秒钟后输出“Hello, World!”。

返回值

setTimeout()返回一个唯一的编码,称为“超时ID”。这个ID可以用于在setTimeout()之前使用clearTimeout()取消超时。

var timeoutID = window.setTimeout(func, delay);

然后可以使用timeoutID作为clearTimeout()的参数。

window.clearTimeout(timeoutID);
延迟执行代码

有很多情况下setTimeout()会派上用场,例如:

  • 延迟批处理
  • 执行动画效果
  • 轮询数据更新
注意

在一些情况下,使用setTimeout()可能不是最佳选择,例如:

  • 当需要在短时间内对代码进行精确的计时或覆盖现有的进度时你需要使用setInterval() 。
  • 当需要更好地控制代码执行顺序时,使用Promise或async/await更为合适。
示例代码
console.log('Program started!');

setTimeout(function(){
  console.log('This message is displayed after 2000 milliseconds');
}, 2000);

console.log('Program ended!');

输出结果:

Program started!
Program ended!
This message is displayed after 2000 milliseconds
总结

setTimeout()是一种非常有用的函数,可以用于在程序运行时添加灵活的延迟。无论您是在执行动画、轮询数据更新还是执行其他延迟操作,setTimeout()都是一种非常便捷的方式。了解setTimeout()还有很多其他用途,如果您需要延迟代码执行的话,它是您需要掌握的一个重要工具之一。