.getMonth()
zwraca liczbę zerową, więc aby uzyskać prawidłowy miesiąc, musisz dodać 1, więc wywołanie .getMonth()
może wrócić, 4
a nie 5
.
Więc w twoim kodzie możemy użyć currentdate.getMonth()+1
do wypisania poprawnej wartości. Dodatkowo:
.getDate()
zwraca dzień miesiąca <- tego właśnie potrzebujesz
.getDay()
jest osobną metodą Date
obiektu, która zwraca liczbę całkowitą reprezentującą bieżący dzień tygodnia (0–6) 0 == Sunday
itd
więc twój kod powinien wyglądać tak:
var currentdate = new Date();
var datetime = "Last Sync: " + currentdate.getDate() + "/"
+ (currentdate.getMonth()+1) + "/"
+ currentdate.getFullYear() + " @ "
+ currentdate.getHours() + ":"
+ currentdate.getMinutes() + ":"
+ currentdate.getSeconds();
Instancje danych JavaScript dziedziczą z Date.prototype. Możesz zmodyfikować obiekt prototypowy konstruktora, aby wpływać na właściwości i metody dziedziczone przez instancje JavaScript Date
Możesz skorzystać z Date
prototypowego obiektu, aby utworzyć nową metodę, która zwróci dzisiejszą datę i godzinę. Te nowe metody lub właściwości zostaną odziedziczone przez wszystkie instancje Date
obiektu, co czyni je szczególnie przydatnymi, jeśli konieczne będzie ponowne użycie tej funkcji.
// For todays date;
Date.prototype.today = function () {
return ((this.getDate() < 10)?"0":"") + this.getDate() +"/"+(((this.getMonth()+1) < 10)?"0":"") + (this.getMonth()+1) +"/"+ this.getFullYear();
}
// For the time now
Date.prototype.timeNow = function () {
return ((this.getHours() < 10)?"0":"") + this.getHours() +":"+ ((this.getMinutes() < 10)?"0":"") + this.getMinutes() +":"+ ((this.getSeconds() < 10)?"0":"") + this.getSeconds();
}
Następnie możesz po prostu pobrać datę i godzinę, wykonując następujące czynności:
var newDate = new Date();
var datetime = "LastSync: " + newDate.today() + " @ " + newDate.timeNow();
Lub wywołaj metodę inline, aby po prostu -
var datetime = "LastSync: " + new Date().today() + " @ " + new Date().timeNow();