类似于倒计时:比如 1天 0小时 15分 前
2天3小时30分前
moment包
按着思路来就可以了,先计算出两个时间之前相差的秒数,假设 from 的时间戳为 1628335028,to 的时间戳为 1629536684。
1628335028
1629536684
先用 from - to = 1201656 , 即两个时间相差了 1201656 秒。
from - to = 1201656
一天有 606024=86400 秒,那现在用 1201656/86400 ,并向下取余 Math.floor(1201656/86400)=13,即得出有 13 天。
Math.floor(1201656/86400)=13
13
现在用相差的秒数,减去 13 天的秒数,就获得了剩下的秒 1201656-13*86400=78456,还有 78456 秒,已知每小时是 60*60=3600秒,然后用同样的手法计算 Math.floor(78456/3600)=21,现在得出有 21 个小时。
78456
60*60=3600
Math.floor(78456/3600)=21
21
然后来计算分钟,用先前减去天后剩下的秒数 78456-21*3600=2856,得到 2856,现在要计算分钟,已知每分钟是 60 秒,那就如法炮制, Math.floor(2856/60)=47,得到:分钟 47。
2856
Math.floor(2856/60)=47
47
然后计算秒数,这个就比较简单了,用刚刚剩下的 2856-47*60=36,即得到秒数 36 秒。
36
那么现在就算出来了 from 到 to 之间差了:13 天 21 小时 47 分 36 秒
为什么要用 Math.floor 简单的说当第一次 1201656/86400 ≈ 13.9080 天,因为我们是要用后面的小数来知道剩下有多少小时、分钟、秒,所以就向下取整,拿 13 ,然后再计算后面的
Math.floor
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(1)
按着思路来就可以了,先计算出两个时间之前相差的秒数,假设 from 的时间戳为
1628335028
,to 的时间戳为1629536684
。先用
from - to = 1201656
, 即两个时间相差了 1201656 秒。一天有 606024=86400 秒,那现在用 1201656/86400 ,并向下取余
Math.floor(1201656/86400)=13
,即得出有13
天。现在用相差的秒数,减去 13 天的秒数,就获得了剩下的秒 1201656-13*86400=
78456
,还有 78456 秒,已知每小时是60*60=3600
秒,然后用同样的手法计算Math.floor(78456/3600)=21
,现在得出有21
个小时。然后来计算分钟,用先前减去天后剩下的秒数 78456-21*3600=
2856
,得到 2856,现在要计算分钟,已知每分钟是 60 秒,那就如法炮制,Math.floor(2856/60)=47
,得到:分钟47
。然后计算秒数,这个就比较简单了,用刚刚剩下的 2856-47*60=
36
,即得到秒数 36 秒。那么现在就算出来了 from 到 to 之间差了:13 天 21 小时 47 分 36 秒
为什么要用
Math.floor
简单的说当第一次 1201656/86400 ≈ 13.9080 天,因为我们是要用后面的小数来知道剩下有多少小时、分钟、秒,所以就向下取整,拿 13 ,然后再计算后面的