409 Stimmen

10 Sekunden zu einem Datum hinzufügen

Wie kann ich 10 Sekunden zu einem JavaScript-Datumsobjekt hinzufügen?

Etwa so:

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

621voto

zzzzBov Punkte 166065

Es gibt eine setSeconds Methode auch:

var t = new Date();
t.setSeconds(t.getSeconds() + 10);

Für eine Liste der andere Date Funktionen, Sie sollten sich MDN ansehen


setSeconds wird Umschlagfälle korrekt behandeln:

var d;
d = new Date('2014-01-01 10:11:55');
alert(d.getMinutes() + ':' + d.getSeconds()); //11:55
d.setSeconds(d.getSeconds() + 10);
alert(d.getMinutes() + ':0' + d.getSeconds()); //12:05

190voto

4esn0k Punkte 8665
// let timeObject = new Date();
// let milliseconds= 10 * 1000; // 10 seconds = 10000 milliseconds
timeObject = new Date(timeObject.getTime() + milliseconds);

110voto

Danpe Punkte 17780

Nur für die Leistungswütigen unter uns.

getTime

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

5.196.949 Ops/sec, schnellste


setSeconds

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

2.936.604 Ops/sec, 43% langsamer


moment.js

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

22.549 Ops/sec, 100% langsamer


Das ist vielleicht die am wenigsten lesbare (aber nicht die schlechteste), aber die schnellste Art zu gehen :)

jspref Online-Tests

65voto

Ron Punkte 5489
const timeObject = new Date(); 
timeObject = new Date(timeObject.getTime() + 1000 * 10);
console.log(timeObject);

Bitte beachten Sie auch: Wie kann man 30 Minuten zu einem JavaScript-Datumsobjekt hinzufügen?

11voto

lostyzd Punkte 4447

Versuchen Sie dies

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

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X