dayjs 天和小时中的两个日期之间的差异
dayjs diff between two date in day and hours
我想用 dayjs 库计算两个日期之间的差异。它工作得很好,但我需要一些不同的东西。例如:
`${dayjs(item).diff(now, 'day') day}`
此函数 returns“20 天”或其他。但是'item'里面还有不计算的小时数。我的意思是应该像“20 天 9 小时”。
如何使用 dayjs 执行此操作?
感谢您的帮助
您可以获得带小数点的天数(将 true
作为第二个参数添加到 diff
并使用它:
const date1 = dayjs('2021-03-13');
const date2 = dayjs();
const diff = date2.diff(date1,'day',true);
console.log("obtained", diff);
const days = Math.floor(diff);
const hours = Math.floor((diff - days) * 24);
console.log(`${days} days, ${hours} hours`);
<script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>
- 计算时差
- 将小时除以 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>
可以使用秒来完成相同的逻辑,然后应用一个函数将这些秒转换为 days/hours/minuts:Convert seconds to HH-MM-SS with JavaScript?
我想用 dayjs 库计算两个日期之间的差异。它工作得很好,但我需要一些不同的东西。例如:
`${dayjs(item).diff(now, 'day') day}`
此函数 returns“20 天”或其他。但是'item'里面还有不计算的小时数。我的意思是应该像“20 天 9 小时”。
如何使用 dayjs 执行此操作?
感谢您的帮助
您可以获得带小数点的天数(将 true
作为第二个参数添加到 diff
并使用它:
const date1 = dayjs('2021-03-13');
const date2 = dayjs();
const diff = date2.diff(date1,'day',true);
console.log("obtained", diff);
const days = Math.floor(diff);
const hours = Math.floor((diff - days) * 24);
console.log(`${days} days, ${hours} hours`);
<script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>
- 计算时差
- 将小时除以 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>
可以使用秒来完成相同的逻辑,然后应用一个函数将这些秒转换为 days/hours/minuts:Convert seconds to HH-MM-SS with JavaScript?