如何添加10秒到一个JavaScript日期对象?

就像这样:

var timeObject = new Date()     
var seconds = timeObject.getSeconds() + 10;
timeObject = timeObject + seconds;

当前回答

在node.js下,.setSeconds为我揭示了非常奇怪的错误行为,所以我使用:

dateAddSeconds(date, seconds){ 
    return new Date( Date.parse(date) + seconds*1000 );
}

其他回答

如果你需要在当前时间上增加10秒,你可以使用:

const date = new Date();
date.setUTCSeconds(date.getUTCSeconds() + 10); // Change 10 to any number of seconds

只为我们中的表演狂人。

取得时间

var d = new Date('2014-01-01 10:11:55');
d = new Date(d.getTime() + 10000);

5,196,949 Ops/秒,更快


setSeconds

var d = new Date('2014-01-01 10:11:55');
d.setSeconds(d.getSeconds() + 10);

2936604次操作/秒,慢43%


moment.js

var d = new moment('2014-01-01 10:11:55');
d = d.add(10, 'seconds');

每秒22,549次操作,慢了100%


所以这可能是最不适合人类阅读的(不是那么糟糕),但是最快的方式:)

Jspref在线测试

timeObject.setSeconds(timeObject.getSeconds() + 10)

在node.js下,.setSeconds为我揭示了非常奇怪的错误行为,所以我使用:

dateAddSeconds(date, seconds){ 
    return new Date( Date.parse(date) + seconds*1000 );
}

试试这个

a = new Date();
a.setSeconds(a.getSeconds() + 10);