setTimeout()与setInterval()本身功能说明,如下:
setInterval(fun,time):间隔time就执行fun函数一次,重复性的。
setTimeout(fun,time):当过了time时间后,执行fun函数一次,非重复性的,只执行一次。
setTimeout()实现setInterval()功能:
/*
* 调用函数
* 参数分为:true和false;
* 参数说明:传入true实现setInterval()功能;传入false取消setInterval()功能
* */
countTimer(true);
//声明一个变量,用来获取函数,目的是为了能结束这个函数,也就是传入false时结束这个功能。
var fun;
//通过传入一个标记,来判断是否重复执行
function countTimer(flag) {
if(flag){
fun = setTimeout(function () {
console.log("计数器=》" ,"ss")
//递归调用函数,不懂递归请百度
countTimer(true)
},2000);
}else{
//结束函数
clearTimeout(fun)
}
}