2017-05-20 4 views
0

Ich versuche, einen Schalter mithilfe einer Schaltfläche zu erstellen, die, wenn ich es anklicke, es einen aktuellen Zeitstempel minus 10 Minuten erhalten wird, wird dann den gesamten Eintrag in der Datenbank ausgehend von dem genannten abfragen timestamp, Ich habe eine funktionierende Javascript-Funktion, aber das Problem ist, wenn die Zeit mit weniger als 10 Minuten ist (zB 21:06:35), es zeigt negativen Wert (21: -4: 35) anstelle von (20:56: 35). Hier ist mein aktueller Code:Javascript: Subtrahieren Minuten in MySQL Timestamp Format

var nowna = new Date(); 
    var month = nowna.getMonth() + 1; 
    var day = nowna.getDate(); 
    var hour = nowna.getHours(); 
    var minute = nowna.getMinutes() - 10; 
    var second = nowna.getSeconds(); 
    var nowna_init = nowna.getFullYear() + '-' + 
     ((''+month).length<2 ? '0' : '') + month + '-' + 
     ((''+day).length<2 ? '0' : '') + day + ' ' + 
     ((''+hour).length<2 ? '0' :'') + hour + ':' + 
     ((''+minute).length<2 ? '0' :'') + minute + ':' + 
     ((''+second).length<2 ? '0' :'') + second; 
     var start15 = nowna_init; 
     console.log(start15); 

das ist, was ich an dem Konsolenprotokoll

2017-05-20 21:-4:35 
    2017-05-20 21:-4:44 
    2017-05-20 21:-1:33 
    2017-05-20 21:26:05 
    2017-05-20 21:26:08 

Antwort

0

Verwenden Sie die Funktion setMinutes des Date-Objekts immer bin.

es wie folgt verwendet:

var d = new Date("2017-05-20T13:03:35.310Z"); 
d.setMinutes(d.getMinutes() - 10); 
console.log(d.getMinutes()); 

Die Stunde wird auch aktualisiert werden.

var d = new Date("2017-05-20T13:03:35.310Z"); 
 
console.log(d.getMinutes()); // 3 
 
console.log(d.getHours()); // 13 
 
d.setMinutes(d.getMinutes() - 10); 
 
console.log(d.getMinutes()); // 53 
 
console.log(d.getHours()); // 12

Hinweis: Die Stunde Ergebnis auf Ihrer lokalen Zeitzone abhängt.

+0

, wenn ich versuche setMinutes zu verwenden, habe ich immer dieses Ergebnis 2017.05.20 22: 1495291218574: 18 2017.05.20 22: 1495291229071: 29 – Stonesteel

+0

versuchen, den Code-Schnipsel Ich habe hinzugefügt zu laufen . Lass es mich wissen, es ist Arbeit für dich ... – sidanmor