JavaScript倒计时怎么写?(js倒计时函数)

boyanx5个月前技术教程22

案例:倒计时

案例分析:

1.这个倒计时是不断变化的,因此需要定时器来自动变化(setInterval)

2.三个黑色盒子里面分别存放时分秒

3.三个黑色盒子利用innerHTML放入计算的小时分钟秒数

4.第一次执行也是间隔毫秒数,因此刚刷新页面会有空白

5.最好采取封装函数的方式,这样可以先调用一次这个函数,防止刚开始刷新页面有空白问题。

倒计时的算法:

1.核心算法:输入的时间减去现在的时间就是剩余的时间,即倒计时,但是不能拿着时分秒相减,比如05分减去25分,

结果会是负数的

2.用时间戳来做,用户输入时间总的毫秒数减去现在时间的总的毫秒数,得到的就是剩余时间的毫秒数.

3.把剩余时间总的毫秒数转换为天、时、分、秒、(时间戳转换为时分秒)*/

//转换公式如下:

/*d = parseInt(总秒数/60/60/24); //计算天数

h = parseInt(总秒数/60/60%24); //计算小时

m = parseInt(总秒数/60%24); //计算分钟

s = parseInt(总秒数%60); //计算当前秒数*/

function conus(time){

var dqtime = +new Date(time);

var zqtime = +new Date();

var times = (dqtime - zqtime) / 1000;

var t = parseInt(times / 60 / 60 / 24);//天

t = t < 10 ? '0' + t:t;

var s = parseInt(times / 60 / 60 % 24);//时

s = s < 10 ? '0' + s:s;

var f = parseInt(times / 60 % 60);//分

f = f < 10 ? '0' + f:f;

var m = parseInt(times % 60);//秒

m = m < 10 ? '0' + m:m;

return t + '天' + s + '时' + f + '分' + m + '秒';

}

console.log(conus('2022-6-7 12:00:00'));

源码如下

标签: js日期

相关文章

前端面试: 使用js的 Date 对象来将日期和时间拼接成时间戳格式

问题描述:js 实现某年月日时间如2023-05-23和某一段时分的时间如12:30进行拼接转化成时间戳格式。解决方案1.可以使用 JavaScript 的 Date 对象来将日期和时间拼接成时间戳格...

Three.js建模基础(three.js 建模)

在Three.js中,一个可见的物体是由几何体和材料构成的。在这个教程中,我们将学习如何从头开始创建新的网格几何体,研究Three.js为处理几何对象和材质所提供的相关支持。1、索引面集/Indexe...

js时间插件Dayjs相对Momentjs的优势

js时间插件Day.js和Moment.js区别昨天发了一些插件的汇总,在评论中有个网友建议把Moment.js换成Day.js,今天特意去学习了Day.js,发现比Moment.js强大很多首先看一...

JavaScript:history和location对象、JS设计模式系统讲解与应用

一、history对象history 对象是历史对象。包含用户(在浏览器窗口中)访问过的 URL。history 对象是 window 对象的一部分,可通过 window.history 属性对其进行...

记录一个函数执行了多长时间?分享 1 段优质 JS 代码片段!

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿!大家好,我是大澈!本文约 500+ 字,整篇阅读约需 1 分钟。今天分享一段优质 JS 代码片段,能够记录一个函数执行了多长时...

Firefox火狐浏览器总结2023年:网页加载、JS执行速度均有提升

IT之家 11 月 27 日消息,Mozilla 日前发布官方新闻稿,盘点了 FireFox 火狐浏览器在 2023 年取得的进展,主要围绕速度方面做出了三大改进,分别是网页加载速度、键盘响应速度、J...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。