【问题标题】:How to subtract Time from current Time momentjs如何从当前时间 momentjs 中减去时间
【发布时间】:2018-08-16 14:19:34
【问题描述】:

我有

const endTime = moment().format("HH:mm:ss");
const duration = moment.utc(request.input('duration') * 60000).format("HH:mm:ss");

我要计算

startTime = endTime - duration

【问题讨论】:

  • request.input('duration') 是什么?
  • 持续时间以毫秒为单位。
  • 我的意思是request.input('duration')的值是多少?
  • 例如 request.input('duration') = 40 分钟
  • moment.utc(request.input('duration') * 60000).format("HH:mm:ss") = '00:40:00" 当 request.input('duration' ) == 40 分钟

标签: javascript datetime time momentjs


【解决方案1】:
endTime.subtract(duration);

应该做的伎俩,这里是文档如果你想深入挖掘docs

编辑:

const endTime = moment(); //now time
const duration = request.input('duration') //duration in miliseconds
let startTime = endTime.subtract(duration,'ms')

const endTime = moment(); //now time
const duration = 600000; //hardcoded 10 mins //duration in miliseconds
console.log(endTime)
let startTime = endTime.subtract(duration, 'ms')
console.log(startTime)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.2.1/moment.min.js"></script>

【讨论】:

  • 你能告诉我更多细节吗?
  • Run code snippet 运行它.. 两个日志都为我返回相同的时间。
  • 修复了示例。 Moment 没有返回新对象
【解决方案2】:

您可以使用 endTime.subtract(duration, 'ms')。但是对于那个 endTime 必须是一个时刻对象。所以稍后格式化答案。

const endTime = moment();
const duration = request.input('duration')
let startTime = endTime.subtract(duration,'ms').format('HH:mm:ss')

【讨论】:

    猜你喜欢
    • 2020-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-10
    • 2023-03-15
    相关资源
    最近更新 更多