<script>
/*
setTimeout(要做的事(通常是函数),间隔时间) 一次性定时器,执行完就没了
clearTimeout(id) 清除定时器
setInterval(要做的事(通常是函数),间隔时间) 周期性定时器 隔一段时间执行一次
clearInterval(id) 清除定时器
定时器有一个队列,就像排队一样
*/
setTimeout(function(a,b,c){
console.log('setTimeout')
},0);
setTimeout(function(){
console.log('setTimeout3000')
},3000);
console.log(1);
//以上代码先输出1,在输出定时器。原因:js是单线程的,一个时间点只能做一个事情
//只要上面代码没做完,下面的代码就被阻塞了。定时器是异步的,优先级最低。而所有的异步操作
//要等到调用栈中所有同步操作执行完后再操作。
setTimeout(function(a,b,c){
console.log('setTimeout'+'a'+'='+a+'b'+'='+b+'c'+'='+c)
},0,/*回调函数的实参*/1,2,3);//回调函数的传参
</script>
网友评论