📜  settimeout - Javascript (1)

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

setTimeout - JavaScript

setTimeout是JavaScript中一个非常常用的函数,它可以在指定的时间后执行一次函数。

语法
setTimeout(function, milliseconds, arg1, arg2, ...)
  • function:必需,要执行的函数。
  • milliseconds:必需,延迟的毫秒数。
  • arg1, arg2, ...:可选,传给函数的参数。
示例
function greet(name) {
  console.log(`Hello, ${name}!`);
}
setTimeout(greet, 2000, "World");

这会在2秒后输出:Hello, World!

返回值

setTimeout方法的返回值是一个整数,表示定时器的ID。可以使用该ID取消该定时器,方法是调用clearTimeout

示例
const timerId = setTimeout(greet, 2000, "World");
clearTimeout(timerId); // 取消定时器
延迟时间

延迟时间的单位是毫秒。请注意,在某些情况下,延迟时间可能会被自动调整为最小值(通常为4ms)。

不带参数的函数

如果你的函数不接受任何参数,则可以将函数本身作为第一个参数传递。

setTimeout(greet, 2000);
嵌套setTimeout

我们可以嵌套多个setTimeout调用,以便创建一些有趣的效果(例如动画)。

function animate(element) {
  element.style.left = "0px";
  setTimeout(function() {
    element.style.left = "200px";
    setTimeout(function() {
      element.style.left = "400px";
    }, 1000);
  }, 1000);
}

这个函数会将指定的HTML元素从左边移动到右边。每次移动之间有1秒的延迟时间。

总结

setTimeout是JS中一个非常强大和灵活的函数,它可以为我们提供创建强大效果和动画的基础。当然,它也有一些缺点和限制,但在正常情况下,它是一个非常有用的工具,值得投资学习和使用。