Web Sites com Ajax

JavaScript

Data

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.

Os métodos do objeto Date()

Relação dos métodos mais utilizados.
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();

Demonstração de um script para se trabalhar com data.