JavaScript 中的 setTimeout() 函数用法详解

1 基本语法

setTimeout() 函数是JavaScript中的一个计时器函数,它允许我们在一定的时间间隔后执行指定的代码。它的基本语法如下:

setTimeout(callback, delay, arg1, arg2, ...)

其中,callback参数是一个函数,它将在指定的延迟时间后执行。delay参数是一个以毫秒为单位的时间值,指定延迟的时间。还可以选择性地传递一些参数给回调函数。

2 调用方式

setTimeout() 函数 的调用方式如下:

let timerId = setTimeout(callback, delay, arg1, arg2, ...);

2.1 不传参的调用方式

function sayHello() {
    
    
  console.log('Hello');
}
setTimeout(sayHello, 1000);

这个例子中,我们定义了一个名为sayHello的函数,并使用 setTimeout() 函数 来延迟1秒后执行它。当1秒钟过去后,控制台将输出"Hello"。

2.2 传参的调用方式

示例代码:

function sayHelloSth(name) {
    
    
  console.log(`Hello ${
      
      name}!`);
}

// 在 3 秒后打印 "Hello World!"
setTimeout(sayHelloSth, 3000, 'World');

在上述示例代码中,我们定义了一个 sayHelloSth() 函数,它接受一个参数 name。然后,使用 setTimeout() 函数调用 sayHelloSth() 函数,并且指定了延迟时间为 3 秒。我们还将字符串 “World” 作为第三个参数传递给 setTimeout() 函数,以便将其传递给 sayHelloSth() 函数。因此,在 3 秒后,将在控制台上看到输出 “Hello World!”。

3 取消延迟执行

当调用 setTimeout() 函数时,它会立即返回一个唯一的定时器ID,我们可以使用这个ID来取消延迟执行。例如:

let timerId = setTimeout(function() {
    
    
  console.log('This message will never be displayed');
}, 5000);

clearTimeout(timerId);

在这个例子中,我们使用setTimeout函数创建了一个定时器,并将其赋值给timerId变量。然后,我们立即使用 setTimeout() 函数来取消这个定时器。这意味着在5秒钟后,控制台不会输出任何消息。

猜你喜欢

转载自blog.csdn.net/weixin_46098577/article/details/131001815