Para trabalharmos com datas e horários em JavaScript fazemos uso do objeto Date() e, para o instanciarmos (criarmos objetos), utilizamos a palavra-chave new.
Vejamos um exemplo:
var dataAtual = new Date();
alert(dataAtual);
No exemplo acima teremos a data e o horário atual, ou seja, o exato momento em que o script foi executado. O resultado aparecerá no formato abaixo:
Mon Jun 26 2006 15:29:13 GMT-0300 (Hora oficial do Brasil)
Observando o resultado acima você deve se perguntar: "Hummm, legal! Mas moro no Brasil e esse formato de data é diferente do utilizado aqui. Não sei trabalhar com ele".
Para resolver esse problema, existem práticas eficientes que nos possibilitam a manipulação desse formato para podermos exibí-lo como desejarmos.
Veja um novo exemplo adaptado ao nosso formato dd/mm/aaaa.
var data = new Date();
var mes = new Array(12)
mes[0] = "Janeiro";
mes[1] = "Fevereiro";
mes[2] = "Março";
mes[3] = "Abril";
mes[4] = "...";
alert(data.getDate() + "/" + mes[data.getMonth()] + "/" + data.getFullYear());
No exemplo acima utilizamos o objeto Date e três de seus métodos: getDate(), getMonth(), getFullYear().
O primeiro retorna o dia do mês (de 1 a 31), o segundo o mês (de 0 a 11) e o último o ano com quatro digítos.
O diferencial acima está na utilização do Array para o mês, uma vez que o método getMonth() retorna números de 0 (zero) a 11 (onze) e, assim, o número 4 (quatro) representaria o mês de maio. Diferentemente de nossa representação usual, onde esse mês é representado pelo algarismo 5 (cinco).
Assim, utilizamos um Array para setarmos o nome do mês (pode ser algarismos também) de acordo com o número retornado pelo método.
Método | Descrição |
---|---|
Date() | Retorna a data e o horário atual. |
getDate() | Retorna o dia do mês (1-31). |
getDay() | Retorna o dia da semana (0-6). |
getMonth() | Retorna o mês (0-11) |
getFullYear() | Retorna o ano com quatro dígitos. |
getHours() | Retorna a hora (0-23). |
getMinutes() | Retorna os minutos (0-59). |
getSeconds() | Retorna os segundos (0-59). |
getMilliseconds() | Retorna os milisegundos (0-999). |
getTimezoneOffset() | Retorna a diferença em minutos entre o tempo local e o do Meridiano de Greenwich (GMT) |
Os métodos acima precisam atuar em conjunto com o objeto Date() porque que eles são métodos desse objeto.
Sua utilização é da seguinte forma:
// Uma forma
new Date().nomeDoMetodo();
// Outra forma
var data = new Date();
data.nomeDoMetodo();