javascript - dayjs 在日和小时中的两个日期之间的差异
问题描述
我想用 dayjs 库计算两个日期之间的差异。它工作得很好,但我需要一些不同的东西。例如:
`${dayjs(item).diff(now, 'day') day}`
此函数返回“20 天”或其他内容。但有些小时不在“项目”内计算。我的意思是它应该像“20 天 9 小时”。
我怎么能用 dayjs 做到这一点?
感谢您的帮助
解决方案
- 以小时为单位获取差异
- 将(和舍入)小时除以 24 得到天数
- 得到剩余的,那些是剩下的时间
const date1 = dayjs('2021-03-13');
const date2 = dayjs();
let hours = date2.diff(date1, 'hours');
const days = Math.floor(hours / 24);
hours = hours - (days * 24);
console.log('Days: ', days);
console.log('Hours: ', hours);
<script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>
可以使用秒来完成相同的逻辑,然后应用一个函数将这些秒转换为天/小时/分钟:Convert seconds to HH-MM-SS with JavaScript?
推荐阅读
- r - 解析没有命名空间的 xml
- r - 加入后data.table复制行?
- javascript - 通过多个属性检查对象数组
- php - 灯到 Django;使用管理员作为网站是否明智?
- asp.net - 在 asp.net 中引导日期选择器
- stored-procedures - ASP.Net MVC 5 存储过程输出错误(初学者)
- maven - 我只能在 jenkins 中构建受 perforce 更改列表影响的项目吗?
- python - Robot Framework / RIDE - 带空格的参数
- python - Python 请求行为
- unicode - Inno 脚本函数“LoadStringFromFile”未正确读取 Unicode