javascript - 如何在时刻js中获得N个日期之间的差异?
问题描述
我有一个场景,我必须减去 3 个日期,结果应该以分钟为基础。
我尝试将这三个日期的纪元时间相减。但它会给我日期。
let a = moment('2020-04-20 15:48:00', "YYYY-MM-DD HH:mm:ss").valueOf();
let b = moment('2020-04-20 15:53:00', "YYYY-MM-DD HH:mm:ss").valueOf();
let c = moment('2020-04-20 16:05:00', "YYYY-MM-DD HH:mm:ss").valueOf();
let result = Math.abs(a - b - c);
console.log(new Date(result));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
请帮助我在几分钟内找到差异。
解决方案
使 momentjs 成为如此出色的包的部分原因在于它提供了一些不错的函数来进行日期数学运算。在此处查看有关该diff
方法的文档https://momentjs.com/docs/#/displaying/difference/
你可以这样((a - b) - c)
做
const minsBetweenAAndB = a.diff(b, 'minutes');
const result = c.subtract(minsBetweenAAndB, 'minutes')
推荐阅读
- c++ - 为什么二进制搜索不适用于我的测试?
- nestjs - 测试一个重新触发的控制器 API
- java - ActiveProfile 在 Junit5 测试中不起作用
- python - ModelForm 没有指定模型类。姜戈
- rabbitmq - 如何在 RabbitMQ 中将 UnAck 消息移动到就绪状态
- python - 将项目打印为 pdf
- php - NGINX 在子目录中提供 PHP 文件作为下载
- android - 如何让android导航主机与BottomNavigationView一起工作?
- domain-driven-design - EventSourcing 中的多聚合事务
- reactjs - 为什么我的 ImageBackground 在 React Native 的 TouchableOpacity 中不一样?