setTimeout实现倒计时组件

 

 组件:

 

 

复习知识: Math取整 : 向下取整 Math.floor, 向上取整 Math.ceil

Math四舍五入:Math.round

Math 0-1随机数 Math.random

setTimeout 与 setInterval区别

1.setInterval(functon,time) 每隔time秒把function推到消息队列中,等待执行(被push到任务队列)=> 无法确定何时执行该function,需要判断队列中有无该定时器的代码实例在执行。

造成的问题:如果定时器1正在执行,time时间到,定时器2则会被添加到消息队列,需要等待定时器1执行完,再次经过Time需要推送定时器3,但此时定时器1还未执行完,定时器2 处于等待状态,则定时器3无法被添加到消息队列而被跳过。

2.setTimeout(function,time) 每隔time秒function直接被push到任务队列中执行

bug: 计算属性 duration在created调用时无法获取 原因是组件没有更新 生命周期函数没有执行
解决办法通过监听计算属性的变化 在watch回调中执行数据的修改

posted @ 2022-02-24 17:31  zhangzhebokeyuan  阅读(277)  评论(0编辑  收藏  举报