Window setInterval() 方法

定义和用法

setInterval() 方法以指定的时间间隔(以毫秒为单位)调用函数。

setInterval() 方法会周期性调用函数,直到调用 clearInterval() 或关闭窗口。

注释:1 秒 = 1000 毫秒。

提示

如需仅执行一次函数,请改用 setTimeout() 方法。

如需清除间隔,请使用 setInterval() 返回的 id:

myInterval = setInterval(function, milliseconds);

然后你可以通过调用 clearInterval() 来停止执行:

clearInterval(myInterval);

另请参阅:

clearInterval() 方法

setTimeout() 方法

clearTimeout() 方法

实例

例子 1

每秒显示 "Hello"(1000 毫秒):

setInterval(function () {element.innerHTML += "Hello"}, 1000);

Fara samarwa

例子 2

每秒调用一次 displayHello:

setInterval(displayHello, 1000);

Fara samarwa

页面下方提供更多实例。

语法

setInterval(function, milliseconds, param1, param2, ...)

参数

参数 描述
function 必需。要执行的函数
milliseconds

必需。执行间隔。

如果值小于 10,则使用 10。

param1, param2, ...

可选。传递给函数的附加参数。

IE9 及更早版本不支持。

返回值

类型 描述
数字

计时器的 ID。

请将此 id 与 clearInterval() 一起使用以取消计时器。

浏览器支持

所有浏览器都支持 setInterval()

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Dukiya Dukiya Dukiya Dukiya Dukiya Dukiya

Matafi da yawa

Matafi 3

A cikin hanyar alamar kwallon rana yana nuna wakilin lokaci:

setInterval(myTimer, 1000);
function myTimer() {
  const date = new Date();
document.getElementById("demo").innerHTML = date.toLocaleTimeString();
}

Fara samarwa

Matafi 4

A cikin hanyar clearInterval() ya fi kammala alamar kwallon rana:

const myInterval = setInterval(myTimer, 1000);
function myTimer() {
  const date = new Date();
  document.getElementById("demo").innerHTML = date.toLocaleTimeString();
}
function myStopFunction() {
  clearInterval(myInterval);
}

Fara samarwa

Matafi 5

A cikin hanyar setInterval() da clearInterval() kafa sabon jinnuwar tsare:

function move() {
  const element = document.getElementById("myBar");
  let width = 0;
  let id = setInterval(frame, 10);
  function frame() {
    if (width == 100) {
      clearInterval(id);
    }
      width++;
      element.style.width = width + '%';
    }
  }
}

Fara samarwa

Matafi 6

Yake 500 milita kuma saurayi dukkanin abin da zai saurayi a cikin 500 milita:

const myInterval = setInterval(setColor, 500);
function setColor() {
  let x = document.body;
  x.style.backgroundColor = x.style.backgroundColor == "yellow" ? "pink" : "yellow";
}
function stopColor() {
  clearInterval(myInterval);
}

Fara samarwa

Matafi 7

Fa cewa anu gana gudanin hanyar zuwa jinnuwar (za a fi IE9 da kashiya kafin kaiwa aiki):

setInterval(myFunc, 2000, "param1", "param2");

Fara samarwa

Amma, har ma a gina jinnuwar anonimu, za a fiwa dukiyar kowace browser:

setInterval(function() {myFunc("param1", "param2")}, 2000);

Fara samarwa