js 方法中调用方法 倒计时举例


// 倒计时
function countDown (num,callback){        //此时callback是一个方法名
    if(num<1){
        return;
    }
    setTimeout(()=>{            //定义了一个时间方法,
        num--;
        typeof callback == 'function' &&  callback(num);    //如果callback是一个方法的话,调用它(真正传值的地方把操作后的num值传给callback)
        countDown (num,callback);                //递归方法(自己调用自己)
    },1000);
}


countDown(3,(num)=>{$(".sure-layer>i").eq(0).text(num+"S");});  //调用countDown方法并为callback定义方法(不是调用)


注:setTimeout和setInterval都属于JS中的定时器,可以规定延迟时间再执行某个操作,不同的是setTimeout在规定时间后执行完某个操作就停止了,而setInterval则可以一直循环下去

    方法+时间(ms)   1s=1000ms


注:方法传方法这种
    1、可以有效地减少代码冗余,这样只需要定义一次定时器方法就可以在多个地方使用
    2、可以不必定义全局变量就可以在多个function中灵活传递变量,防止全局变量污染

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值