📅  最后修改于: 2023-12-03 15:32:23.956000             🧑  作者: Mango
在 Web 开发中,经常会遇到需要间隔一定时间执行某个函数的场景,例如轮播图、定时刷新页面等。本文将介绍如何使用 JavaScript 在每 x 秒执行一次某个函数。
setInterval()
是 JavaScript 内置的定时器函数,可以按照指定的时间间隔重复执行指定的代码。语法如下:
setInterval(function, milliseconds);
其中 function
代表要执行的函数,milliseconds
代表间隔的毫秒数。例如,要每 1 秒钟输出一次 "Hello World!",可以写出以下代码:
setInterval(function() {
console.log("Hello World!");
}, 1000);
以上代码将每 1000 毫秒(即 1 秒钟)执行一次 console.log("Hello World!");
。
需要注意的是,setInterval()
函数返回的是一个 ID 值,可以用于取消计时器。例如,要停止刚才的计时器,可以写出以下代码:
var intervalId = setInterval(function() {
console.log("Hello World!");
}, 1000);
// 停止计时器
clearInterval(intervalId);
setTimeout()
与 setInterval()
相似,可以按照指定的时间间隔执行指定的代码。然而,setTimeout()
只会执行一次,执行完后就不会再次执行,除非再次调用。语法如下:
setTimeout(function, milliseconds);
其中 function
代表要执行的函数,milliseconds
代表时间间隔的毫秒数。例如,要每 1 秒钟输出一次 "Hello World!",可以写出以下代码:
function timer() {
console.log("Hello World!");
setTimeout(timer, 1000);
}
timer();
以上代码将每 1000 毫秒执行一次 console.log("Hello World!");
,并一直执行下去。
需要注意的是,setTimeout()
函数返回的也是一个 ID 值,可以用于取消计时器。例如,要停止刚才的计时器,可以写出以下代码:
var timeoutId = setTimeout(function() {
console.log("Hello World!");
}, 1000);
// 停止计时器
clearTimeout(timeoutId);
两种方法的效果是类似的,但具体使用哪一种方法要根据具体情况而定。
以上就是本文对于 JS 每 x 秒执行一次的介绍,希望对大家有所帮助。