1-Como a maioria dos objetos de dados no Javascript o objeto data tem uma representação interna
no Javascript.
Quando exibimos o conteúdo do elemento data este é convertido para o formato aceito pelos humanos,
ou seja, pelo idioma, configrações regionais, etc.
Portanto, o objeto Data é primitivo em sua natureza mas a sua exibição é formatada para visualização
e isto poderá ocasionar erros quando a formatação do JavaScript é diferente da formatação do browser.
2-As funções de data e hora devolvem números...de 0 a n ou de 1 a n
3-Sempre utilize as funções toLocaleDateString() para formatar a data em outros idiomas. Evita muitos erros.
1-Definindo objeto data e exibindo:
Script:
var a = new Date();
document.write(a);
Funcionamento:
Considerações :
1-O formato padrão foi o Inglês : Dia da Semana, Mês, Dia, Ano, Horário, Fuso horário.
Separando os elementos da data
Dia da Semana - getDay()
Cuidado : getDay() dá o dia da semana e não o dia do mês.
0=Domingo, 1=Segunda, 2=Terça, 3=Quarta, 4=Quinta, 5=Sexta, 6=Sábado.
Script:
document.write(a.getDay()); //exibe de 0 a 6
document.write('<br />');
switch (a.getDay()) {
case 0:
document.write('Domingo')
break;
case 1:
document.write('Segunda-Feira')
break;
case 2:
document.write('Terça-Feira')
break;
case 3:
document.write('Quarta-Feira')
break;
case 4:
document.write('Quinta-Feira')
break;
case 5:
document.write('Sexta-Feira')
break;
case 6:
document.write('Sábado')
break;
Funcionamento:
Dia do Mês - getDate()
getDate() devolve o dia do mês de 1 a 31, dependendo do mês.
Script:
document.write(a.getDate())
Funcionamento:
Mês do Ano - getMonth()
ImportantegetMonth devolve os valores de 0 a 11 correspondentes ao mes do ano;
Script:
document.write(a.getMonth())
Fiz um switch-case para exibir o nome do mês por extenso mas ele é longo e resolvi não mostrar.
Funcionamento:
Ano da data - getYear()
Importante : O Ano no Javascript desconsidera o século.
Portanto é preciso somar 1900 ao resultado da função para exibir o ano correto.
Importante: Esta função é muito usada para comparar se uma data é anterior ou posterior a outra.
Basta fazer uma conta de subtração.
Script:
document.write(a.getTime());
Funcionamento:
Importante
As datas e horários exibidas são determinadas pelo sistema operacional e pelo fuso horário determinado nele.
Portanto, é o horário local do usuário.
Caso queira obter o horário com referencia ao horário oficial de Greenwich use as funções:
getUTCDate(), getUTCDay(), getUTCFullYear(), getUTCHours(), getUTCMilliseconds(),
getUTCMinutes(), getUTCMonth(), getUTCSeconds().
Normalmente pode ocorrer erros de representação se a formatação do string não for compatível com o idioma
ou configuração local da máquina.
Convertendo horas em string()
Script:
document.write(a.toString());
Funcionamento:
Criando uma data específica
Neste caso precisaremos do dia, mes e ano no formato numérico.
Importante :
1-A data deve estar no padrão universal, ou seja, AAAA,MM,DD.
2-Como não foi definido horário será utilizado 00:00:00 do horário local.
Script1:
document.write(new Date(1995, 11, 17));
Funcionamento:
Script2:
var dia, mes, ano;
dia = 15;
mes = 9;
ano = 2015;
document.write(new Date(ano, mes, dia));
Funcionamento:
Criando uma data e horários específicos
Neste caso precisaremos de todos os parâmetros numéricos.
Importante :
1-A data deve estar no padrão universal, ou seja, AAAA,MM,DD,HH,MM,SS.
Como no exemplo anterior podemos colocar todos os parâmetros em variáveis numéricas e fazer a conversão.
Exibindo a data no formato brasileiro
O formato tipico brasileiro é DD/MM/AAAA. Importante: Os modernos browsers tem uma função para isso.
Sempre utilize as funções nativas para formatação de data, isto evita muitos erros.
O formato tipico americano é MM/DD/AAAA. Importante:
1-Os modernos browsers tem uma função para isso.
Sempre utilize as funções nativas para formatação de data, isto evita muitos erros.
2-Este formato é muito usado para trabalhar com o SQL Server pois o padrão de data em
bancos de dados é o inglês.