【问题标题】:Time minus time in javascript [duplicate]javascript中的时间减去时间[重复]
【发布时间】:2015-06-29 00:30:03
【问题描述】:

我喜欢在 javascript 中减去时间。我尝试了各种方法,但都没有奏效。

例如:

var endtime = "22:30" // time-range 00 to 24 hours
var time_difference = "2:30" // time to substract from endtime
// wanted result: starttime = "20:00" // time

如何用 javascript 解决这个问题?

【问题讨论】:

  • 使用 Date() 对象。
  • @oneway 绝对不是重复的:时间!= 日期。
  • @Guido Lemmens 2:只需将这些时间字符串转换为秒数并减去。
  • @zerkms :谢谢,我将时间字符串转换为秒数并减去它们......这很容易!

标签: javascript time


【解决方案1】:

使用moment.js:

var endtime = moment({hour: 22, minute: 30});
endtime.subtract(2, 'hours');
endtime.subtract(30, 'minutes');
var result = endtime.format('H:mm');

【讨论】:

  • 不错的一票否决票!你是如此1337。
  • 不是反对者,但在节省时间时,您的解决方案可能会产生错误的结果。将时间视为日期通常是一个糟糕(甚至愚蠢?)的想法。
  • @zerkms 您基本上可以将它基于过去的日期+时区,您确定与节省时间的天/闰年/闰秒无关。
  • 您可以,直到您这样做 - 您的解决方案可能会产生不正确的结果(因此您的答案仍然不正确)。
【解决方案2】:

尝试使用 moment.js moment().subtract() 方法...

http://momentjs.com

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-22
    • 1970-01-01
    • 2011-08-12
    • 2019-05-04
    相关资源
    最近更新 更多