.getMonth()
retorna um número com base em zero; para obter o mês correto, você precisa adicionar 1; portanto, a ligação .getMonth()
pode retornar 4
e não 5
.
Portanto, no seu código, podemos usar currentdate.getMonth()+1
para gerar o valor correto. Além do que, além do mais:
.getDate()
retorna o dia do mês <- este é o que você deseja
.getDay()
é um método separado do Date
objeto que retornará um número inteiro que representa o dia atual da semana (0-6) 0 == Sunday
etc.
portanto, seu código deve ficar assim:
var currentdate = new Date();
var datetime = "Last Sync: " + currentdate.getDate() + "/"
+ (currentdate.getMonth()+1) + "/"
+ currentdate.getFullYear() + " @ "
+ currentdate.getHours() + ":"
+ currentdate.getMinutes() + ":"
+ currentdate.getSeconds();
As instâncias de data JavaScript herdam de Date.prototype. Você pode modificar o objeto de protótipo do construtor para afetar propriedades e métodos herdados pelas instâncias de data do JavaScript
Você pode usar o Date
objeto prototype para criar um novo método que retornará a data e hora de hoje. Esses novos métodos ou propriedades serão herdados por todas as instâncias do Date
objeto, tornando-o especialmente útil se você precisar reutilizar essa funcionalidade.
// 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();
}
Você pode simplesmente recuperar a data e a hora fazendo o seguinte:
var newDate = new Date();
var datetime = "LastSync: " + newDate.today() + " @ " + newDate.timeNow();
Ou chame o método inline para que ele simplesmente seja -
var datetime = "LastSync: " + new Date().today() + " @ " + new Date().timeNow();