setTimeout && setInterval
/*
*定时器应用函数
*安排函数f()在未来的调用模式
*在等待了若干毫秒之后调用f()
*如果设置了interval并没有设置end参数,则对f()调用将不会停止
*如果没有设置interval和end,只在若干毫秒后调用f()一次
*只有指定了f(),才会从start=0的时刻开始
*注意,调用invoke()不会阻塞,它会立即返回
*@param {函数} f 传递的函数
*@param {num} start 指定函数开始调用的时间
*@param {num} interval 指定函数重复调用的时间
*@param {num} end 指定函数结束的时间
*/
function invoke(f, start, interval, end) {
if (!start) start = 0;
if (arguments.length <= 2)
setTimeout(f, start);
else {
setTimeout(repeat,start);
function repeat() {
var h = setInterval(f, interval);
if (end) setTimeout(function() {clearInterval(h);},end);
}
}
}
- setTimeout () 实现一个函数在指定的毫秒数之后运行,返回一个值,这个值可以传递给 clearTimeout () 用于取消这个函数的执行。
- setInterval () 实现一个函数在指定的毫秒数的间隔里重复调用,返回一个值,这个值可以传递给 clearInterval () 用于取消这个函数的执行。
- 这两个函数是客户端 javascript 中的全局函数,window 对象的方法。
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: