获取与日不同的分钟和小时



我试图获得会议持续时间减去会议结束时间和会议开始时间。到目前为止,我们用的是"天"one_answers"小时"。参数,我可以得到小时差。但我还想要分钟长度。例如,如果会议少于一小时,则计算会议分钟。

<Info
icon={"alarm"}
title={
meeting && meeting.start_time
? "Est. " +
dayjs(meeting.end_time).diff(
dayjs(meeting.start_time),
"hours",
) +
" hour"
: "Unavailable"
}
/>

现在使用下面的代码,当会议不到一个小时时,我得到0小时。有没有人能告诉我如何计算小时和分钟(当小于小时时)

您可以使用dayjs持续时间插件如下:

const start = dayjs('2022-04-04T16:00:00.000Z');
const end = dayjs('2022-04-04T18:22:00.000Z')
const diff = dayjs.duration(end.diff(start));
const diffFormatted = diff.format('HH:mm');
console.log(diffFormatted);
<script src="https://unpkg.com/dayjs@1.11.3/dayjs.min.js"></script>
<script src="https://unpkg.com/dayjs@1.11.3/plugin/duration.js"></script>
<script>dayjs.extend(window.dayjs_plugin_duration)</script>

不使用dayjs也可以获得小时、分钟和秒的差异。这就是

const duration = Math.abs(
new Date(meeting.end_time).getTime() - new Date(meeting.start_time).getTime()
);
const minutes = Math.floor(duration / 1000 / 60);
const hours = Math.floor(duration / 1000 / 60 / 60);
const days = Math.floor(duration / (1000 * 3600 * 24));

最新更新