定时器
创建定时器
setInterval(code,millisec)
code: 要调用的代码块或者函数
millisec: 是周期性执行代码块或函数的间隔,以毫秒计
//例如: 创建定时器timer, 每隔1秒调用一次函数function
var timer = setInterval( function(){},1000);
关闭定时器
setInterval()方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。
由setInterval() 返回的 ID 值可用作 clearInterval() 方法的参数。
注
clearInterval()方法可以关闭定时器和延时器
//例如: 关闭上面创建的定时器timer
clearInterval(timer);
定时器的三种写法
- setInterval()可以有三种不同的写法
//写法一: (直接使用字符串,不建议)
setInterval(“alert(‘hello’)”, 1000);
//写法二: (直接传入函数名即可)
function func(){
alert(“hello”);
}
setInterval(func, 1000);
//写法三: (推荐写法, 以后最常用)
setInterval(function(){
alert(“hello”);
}, 1000);
延时器
延时器setTimeout
setTimeout(): 指定的时间过后执行一次代码.
setTimeout和setInterval的用法类似
创建延时器
var timer = setTimeout(function(){ }, 1000);
取消延时器
clearTimeout(timer);
同步与异步
//同步:按照顺序一步步的执行 1 2 3 4 5 ...
//js 从上往下执行,就是同步,按照顺序执行
console.log(11111);
console.log(22222);
console.log(33333);
//异步:不按照顺序执行,与同步是相反的 1 3 5 2 4 ...
console.log(11111);
//被推入执行队列中,等待被执行
setTimeout(function(){
console.log(222222);
},0)
console.log(33333);
//异步代码会等待所有的同步代码执行完之后再执行