通过使用 JavaScript,我们有能力做到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行。我们称之为计时事件。提供了两种计时器的方法如下:
setInterval()
的使用方法:
setInterval(code,millisec);
代码如下:
var p1 = document.getElementById("p"); var n = 0; var data = ["4234","343440"]; var rows = 0; var cols = 0; function setCode(){ if(cols < data[rows].length){ p1.innerHTML += data[rows][cols]; cols++; }else if(rows < data.length){ p1.innerHTML += "</br>"; rows++; cols = 0; }else { clearInterval(timer); } } var timer = setInterval(setCode,500);
setTimeout和setInterval用法是一样的的。
那么在计时器中能否传递参数呢?答案是不能的那么怎么办呢,推荐使用匿名函数。
代码如下:
var person = {name: "peng", age: 23}; function getPerson(person){ alert(person.name); } var timer = setInterval(function(){ getPerson(person); },1000);
就是在定义定时器是在重新写一个函数在函数里面去调用方法。
当然也可以直接将函数和参数用“”括起来 ,但是这样不能周期性改变参数的值.
总结