首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何利用矩减去时间

如何利用矩减去时间
EN

Stack Overflow用户
提问于 2019-06-20 09:53:15
回答 1查看 76关注 0票数 0

我的组件中有开始日期和结束日期,我正在通过时间选择器使用moment库获得这些日期。

因此,假设我的数据报警器选择了startDate和endDate作为今天的选择。现在,我需要另一个日期,比如previousStartDatepreviousEndDate,与startDateendDate相比,它们的时间差应该是相同的。

代码语言:javascript
运行
复制
startDate = '20-06-2019 00:00:00'
endDate = '20-06-2019 23:59:59'

所以previousStartDatepreviousEndDate应该是

代码语言:javascript
运行
复制
previousStartDate = '19-06-2019 00:00:00'
previousEndDate = '19-06-2019 23:59:59'

怎么能做到呢?

我试过了,但没有成功。

代码语言:javascript
运行
复制
  getPreviousStartDates ({ startDate, endDate }) {
     const diff = endDate.diff(startDate)
     const diffDuration = moment.duration(diff)
     const subtractStartDate = startDate.subtract(diff)
     console.log({subtractStartDate})
     return subtractStartDate
  }

再澄清一些

假设startDateendDate之间的时差是3天(17-6-2019 00:00:00 && 19-6-2019 23:59:59),那么previousStartDatepreviousEndDate之间的时间差应该是相同的,但是过去的3天。(14-6-2019 00:00:00 && 16-6-2019 23:59:59)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-20 11:27:34

它是否要求使用动量完成?我不太熟悉动量,但您可以在javascript中这样做:

代码语言:javascript
运行
复制
let start = new Date("2019-06-20 00:00:00");
let end = new Date("2019-06-20 23:59:59");
let duration = end.getTime() - start.getTime(); // milliseconds

let prevStart = new Date(start.getTime() - duration);
let prevEnd = new Date(prevStart.getTime() + duration);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56683364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档