Javascript中的setInterval, 和clearInterval



setInterval()

定义和用法:

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。

setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。

语法:

setInterval(functionName, interval [, param1, param2, ..., paramN])

参数:

functionName 一个函数名或者一个对匿名函数的引用。

interval 对 functionName 参数的两次调用之间的时间(以毫秒为单位)。

param1, param2, …, paramN 传递到 function 或 methodName 参数的可选参数。

返回值:

一个可以传递给 Window.clearInterval() 从而取消对 code 的周期性执行的值。

示例

用法 1:下面的示例每隔 1000 毫秒(每隔 1 秒)调用一次匿名函数。

setInterval( function(){ trace(“interval called”); }, 1000 );

用法 2:下面的示例定义两个事件处理函数并分别调用它们。对 setInterval() 的两次调用的结果都是每隔 1000 毫秒就向“输出”面板发送字符串 “interval called”。对 setInterval() 的第一个调用将调用 callback1() 函数,该函数包含 trace() 动作。对 setInterval() 的第二个调用将 “interval called” 字符串作为参数传递给函数 callback2()。

function callback1() {

trace(“interval called”);

}

function callback2(arg) {

trace(arg);

}

setInterval( callback1, 1000 );

setInterval( callback2, 1000, “interval called” );

用法 3:此示例使用对象的方法。当要调用为对象定义的方法时,必须使用此语法。

obj = new Object();

obj.interval = function() {

trace(“interval function called”);

}

setInterval( obj, “interval”, 1000 );

obj2 = new Object();

obj2.interval = function(s) {

trace(s);

}

setInterval( obj2, “interval”, 1000, “interval function called” );

必须使用第二种格式的 setInterval() 语法来调用对象的方法,如下所示:

setInterval( obj2, “interval”, 1000, “interval function called” );

clearInterval()

定义和用法

clearInterval() 方法可取消由 setInterval() 设置的 timeout。

clearInterval() 方法的参数必须是由 setInterval() 返回的 ID 值。

语法

clearInterval(id_of_setinterval)

参数

id_of_setinterval 由 setInterval() 返回的 ID 值。

本文基于署名-非商业性使用 3.0许可协议发布,欢迎转载,演绎,但是必须保留本文的署名JetWu技术博客(包含链接),且不得用于商业目的。
如您有任何疑问或者授权方面的协商,请与我联系。