倒计时效果
核心算法
输入的时间减去现在的时间就是剩余的时间,即倒计时,但是不能按着时分秒相减,比如 05 分 减去 25 分,结果会是负数的
因此 用时间戳来做
用户输入时间总的毫秒数减去现在时间的总的毫秒数,得到的就是剩余时间的毫秒数。
转换
把剩余时间总的毫秒数转换为天、时、分、秒(时间戳转换为时分秒)
转换公式如下:
d
= parseInt(总秒数
/60/60/24);
h
= parseInt(总秒数
/60/60%24);
m
= parseInt(总秒数
/60%60);
s
= parseInt(总秒数
%60);
案例
function countDown(time
) {
var nowTime
= +new Date();
var inputTime
= +new Date(time
);
var times
= (inputTime
- nowTime
) / 1000;
var d
= parseInt(times
/ 60 / 60 / 24);
d
= d
< 10 ? "0" + d
: d
;
var h
= parseInt((times
/ 60 / 60) % 24);
h
= h
< 10 ? "0" + h
: h
;
var m
= parseInt((times
/ 60) % 60);
m
= m
< 10 ? "0" + m
: m
;
var s
= parseInt(times
% 60);
s
= s
< 10 ? "0" + s
: s
;
return d
+ "天" + h
+ "时" + m
+ "分" + s
+ "秒";
}
console
.log(countDown("2020-10-3 16:00:00"));
var date
= new Date();
console
.log(date
);
显示结果如下:
多练几遍-----------加强巩固