javascript中setTimeout与setInterval用法

  JavaSctipt中的window对象有两个主要的定时方法,分别是setTimeout()和setInterval(),他们的语法基本上相同,但是完成的功能是有区别的。setTimeout()用于在指定的毫秒数后调用函数或计算表达式;setInterval()方法则按照指定的周期(以毫秒计)来调用函数或计算表达式。

setTimeout

定义和用法: setTimeout()方法用于在指定的毫秒数后调用函数或计算表达式
语法 setTimeout(code,millisec)
参数 ■ code[必需]:要调用的函数名或要执行的JavaScript代码串
■ millisec[必需]:在执行代码前需等待的毫秒数,注意1000毫秒=1秒
提示 setTimeout() 只执行code一次,执行玩也就完事了。如果要多次调用,请使用 setInterval() 或者让code 自身再次调用 setTimeout()

下面是一小段setTimeout()用法示例代码:

function test(){  
	alert("test_setTimeout");  
}  
window.setTimeout(test, 5000);        //表示延时5秒执行test()函数
window.setTimeout("test()", 30000);   //表示延时30秒执行test()函数

还有一个问题需要注意,就是调用函数中带有参数,这里的参数只能是字符串形式进行传递,而不能传递一个对象,即:

setTimeout("test(" + 参数 + ")",5000);

另外,setTimeout()前的window通常可以省略不写。

清除setTimeout()定时功能的方法如下:

var timeout = setTimeout("test()",1000); 
clearTimeout(timeout); 

setInterval()

定义和用法: setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式。
setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。由 setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
语法 setInterval(code,millisec[,"lang"])
参数 ■ code[必需]:要调用的函数名或要执行的JavaScript代码串
■ millisec[必需]:在执行代码前需等待的毫秒数,注意1000毫秒=1秒

下面是一小段setInterval()用法示例代码:

function test(){   
	alert("test_setTimeout");   
}   
window.setInterval(test, 5000);        //表示每隔5秒执行一次test()函数,循环执行 
window.setInterval("test()", 5000);    //表示每隔5秒执行一次test()函数,循环执行 

同样需要注意注意的是,就是调用函数中带有参数,这里的参数只能是字符串形式进行传递,而不能传递一个对象,即:

setInterval("test(" + 参数 + ")",5000);

代码清除setInterval()定时功能的方法如下(关闭浏览器窗口也可使setInterval()函数失效):

var interval = setInterval("test()",1000); 
clearInterval(interval); 

你可能感兴趣的:(JavaScript)