如何在当前日期添加20分钟?

Ric*_*nop 33 javascript datetime

可能重复:
如何向javascript Date对象添加30分钟?

我可以得到这样的当前日期对象:

var currentDate = new Date();
Run Code Online (Sandbox Code Playgroud)

我怎么能加20分钟呢?

var twentyMinutesLater = ?;
Run Code Online (Sandbox Code Playgroud)

Nic*_*ver 100

使用.getMinutes()得到当前分钟,然后加入20,并使用.setMinutes()更新的日期对象.

var twentyMinutesLater = new Date();
twentyMinutesLater.setMinutes(twentyMinutesLater.getMinutes() + 20);
Run Code Online (Sandbox Code Playgroud)

  • 出于好奇,当分钟数> = 40时,它是否适用于任何浏览器?(IE6我在看着你) (4认同)
  • @VGE:*"可能是最有效的方式"*可能不是,原始值方法可能更有效.但我无法想象它*在现实世界中非常重要*,即使是在一个紧凑的循环中也是如此,并且对于对其进行维护的任何人来说代码都很清楚. (3认同)
  • @ring0 - 是的,如果添加超过一小时,它会正确环绕,它会更新小时。 (2认同)
  • @JimmyBosse:`new Date(currentDate)` 将通过 *string* 进行往返并删除日期的毫秒部分。要准确地克隆日期(并且更有效,并不是说这很重要),您需要“new Date(+currentDate)”。 (2认同)

T.J*_*der 26

以毫秒为单位添加:

var currentDate = new Date();
var twentyMinutesLater = new Date(currentDate.getTime() + (20 * 60 * 1000));
Run Code Online (Sandbox Code Playgroud)


Rin*_*g Ø 8

只需在几分钟内添加20分钟到您的日期:

  var currentDate = new Date();

  currentDate.setTime(currentDate.getTime() + 20*60*1000);
Run Code Online (Sandbox Code Playgroud)


Mic*_*rdt 7

只需获得毫秒时间戳并添加20分钟:

twentyMinutesLater = new Date(currentDate.getTime() + (20*60*1000))
Run Code Online (Sandbox Code Playgroud)


poo*_*oja 5

var d = new Date();
var v = new Date();
v.setMinutes(d.getMinutes()+20);
Run Code Online (Sandbox Code Playgroud)