Javascrip内置函数--计时器

延时执行:setTimeout()

 

 

setTimeout的三种写法:

console.log(1);

/**
 * 第一个参数是代码,注意代码需用引号包裹,否则会立即执行代码
 * 第二个参数是 1000,即 1000ms 后执行 console.log(2)
 */
setTimeout('console.log(2)', 1000);

/**
 * 第一个参数是匿名函数
 * 第二个参数是 2000,即 2s 后执行 console.log(3)
 */
setTimeout(function () {
  console.log(3);
}, 2000);

// 第一个参数是函数名,注意函数名后不要加小括号“()”,否则会立即执行 print4
setTimeout(print4, 3000);

console.log(5);

function print4() {
  console.log(4);
}


模型优化:
1.打印剩余秒数;
2.将秒数减一;
3.如果剩余秒数>0,则调用settimeout在最后一秒重复上述的1、2、3,否则不再调用,并消除计时器,即计时结束;

//首先定义总秒数,单位s
let i=60;

//定义变量用来储存定时器的编号
let timeId;

//写一个函数,这个函数即每次要执行的代码,能够完成上述的1、2、3
function count(){
  count.log(i);
i--;
if(i>0){
  timerId=setTimeout(count,1000)
}else{
  
//清除计时器
  clearTimeout(timeId);
}
}






posted @ 2022-10-28 20:02  泡泡茶壶。  阅读(48)  评论(0)    收藏  举报