MSPC

   Informações técnicas
| Mapa | Fim pág |

 

JavaScript - Funções de data e hora


Índice da série |

O objeto Date | getDate | getDay |
getFullYear | getHours |
getMilliseconds | getMinutes | getMonth |
getSeconds | getTime |
getTimezoneOffset |
parse | setDate | setFullYear |
setHours | setMilliseconds | setMinutes |
setMonth | setSeconds |
setTime | toLocaleString |
toUTCString | UTC |
Índices

Ciência dos materiais
Eletricidade e eletromagnetismo
Eletrônica digital
Eletrônica em geral
Fluidos, calor, frio, etc
Informática
Matemática
Mecânica teórica
Resistência dos materiais
Temas técnicos diversos
Temas diversos
Termodinâmica / transmissão de calor

Observações

TopoFim
1-) Parâmetros indicados entre parênteses são opcionais.

2-) UTC (Coordinated Universal Time) é o padrão atual de tempo de acordo com os fusos horários. É continuação moderna do GMT (Greenwich Mean Time). Algumas vezes são considerados sinônimos, mas rigorosamente não são.

3-) Algumas funções (obsoletas ou de pouco uso) de data e hora não são apresentadas.

O objeto Date()

TopoFim
Permite trabalhar com datas e horas. Pode ser criado por uma das formas abaixo:

            new Date()
            new Date(ms)
            new Date(string_de_data)
            new Date(nAno, nMês, nDia [, nHora, nMin, nSeg, nMs] )

A data é dada em milissegundos, a partir de 00:00:00 h GMT de 01 de janeiro de 1970.

Se nenhum parâmetro é fornecido (primeira forma), são assumidas a data e hora locais, isto é, do computador que executa o script.

Parâmetros:

ms: milissegundos desde a data inicial dada acima.

string_de_data: uma seqüência de caracteres em um formato suportado. Exemplo: "Mon, 27 Dec 2004 12:00:00 GMT".

nAno, nMês, nDia, etc: valores inteiros representando partes da data. Exemplo: Janeiro 0, Fevereiro 1, etc.

Exemplo de aplicação 1: a variável intervalo armazena o tempo de execução em milissegundos das outras instruções.

            tempo_1 = new Date();
            // outras instruções
            tempo_2 = new Date();
            intervalo = tempo_2 - tempo_1


Exemplo de aplicação 2: este é um exemplo dinâmico, que atualiza o objeto Date() a cada segundo, permitindo um relógio na tela em vez da simples hora e data do carregamento da página.

O script abaixo deve estar entre <head> e </head> da página:

            <script language="JavaScript">
            
            function DataHora(){
            var data = new Date();
            tempo.innerHTML = data;
            setTimeout("DataHora()",1000)
            }
            </script>

O código seguinte deve estar dentro de <body>:

onLoad="DataHora()"

E este no corpo da página (entre <body> e </body>):

<span id=tempo></span>

E o resultado é:


É evidente que os nomes aparecem em inglês. Para outra língua, mais códigos são necessários.

getDate()

TopoFim
Retorna um número inteiro entre 1 e 31, que representa o dia do mês do objeto Date.

Exemplo: a variável dia contém dia do mês da data atual.

            data = new Date();
            dia = data.getDate();


getDay()

TopoFim
Retorna um número inteiro do dia da semana. Domingo 0, segunda 1, terça 2, etc.

Exemplo: a variável dia_semana contém o dia da semana da data atual.

            data = new Date();
            dia_semana = data.getDay();


getFullYear()

TopoFim
Retorna o ano do objeto Date em números absolutos, por exemplo 1998.

Exemplo: a variável ano contém o ano da data atual.

            data = new Date();
            ano = data.getFullYear();


getHours()

TopoFim
Retorna a hora do objeto Date, um número inteiro entre 0 e 23.

Exemplo:

            data = new Date();
            hora = data.getHours();


getMilliseconds()

TopoFim
Retorna os milissegundos do objeto Date, um inteiro entre 0 e 999.

Exemplo:

            data = new Date();
            ms = data.getMilliseconds();


getMinutes()

TopoFim
Retorna os minutos do objeto Date, um inteiro entre 0 e 59.

Exemplo:

            data = new Date();
            min = data.getMinutes();


getMonth()

TopoFim
Retorna o mês do objeto Date, um inteiro entre 0 e 11 (0 janeiro, 1 fevereiro, etc).

Exemplo:

            data = new Date();
            mes = data.getMonth();


getSeconds()

TopoFim
Retorna os segundos do objeto Date, um número inteiro entre 0 e 59.

Exemplo:

            data = new Date();
            seg = data.getSeconds();


getTime()

TopoFim
Retorna o número de milissegundos da data conforme informado no primeiro tópico. Em geral usado para especificar a data e hora de um outro objeto Date.

Exemplo:

            certo_dia = new Date("May 15, 1998");
            outro_dia = new Date();
            outro_dia.setTime(certo_dia.getTime());


getTimezoneOffset()

TopoFim
Retorna a diferença, em minutos, entre a hora local e a hora GMT.

Exemplo:

            data = new Date();
            dif_gmt_horas = data.getTimezoneOffset() / 60;


Date.parse(string_de_data)

TopoFim
Retorna o número de milissegundos de uma seqüência de caracteres (string) de data, desde 01 de janeiro de 1970 00:00:00 h (hora local).

A string de data deve estar dentro do padrão aceito. Exemplo: Tue, 28 Dec 2004 11:00:00 GMT-0330. Se não especificado o fuso horário, o horário local é considerado.

Deve sempre ser usado na forma Date.parse() e não com um objeto Date criado. Em geral usado com setTime() para especificar uma nova data para o objeto.

Exemplo:

            data = new Date();
            data.setTime(Date.parse("Apr 15, 2004"));


setDate(nDia)

TopoFim
Especifica um dia do mês para um objeto Date. nDia deve ser um inteiro entre 1 e 31, de acordo com o mês corrente.

Exemplo:

            certo_dia = new Date("May 15, 1998");
            certo_dia.setDate(25);


setFullYear(nAno [, nMes, nDia])

TopoFim
Especifica um ano (em 4 dígitos) para um objeto date existente. nAno é um inteiro de 4 dígitos representando o ano, nMes um inteiro de 0 a 11 para o mês (0 janeiro, 1 fevereiro, etc) e nDia um inteiro de 1 a 31 para o dia do mês. Se é dado um valor para nDia, é obrigatório um valor para nMes.

Se um parâmetro é especificado fora da faixa, a função tenta atualizar os demais de forma coerente. Exemplo: se um valor de 15 é dado para nMes, o ano é aumentado de 1 e o valor 4 é usado para nMes.

Exemplo:

            certo_dia = new Date();
            certo_dia.setFullYear(1995);


setHours(nHora [, nMin, nSeg, nMs])

TopoFim
Especifica a hora para um objeto Date. nHora é um inteiro entre 0 e 23. Os demais parâmetros são opcionais: nMin (inteiro entre 0 e 59), nSeg (inteiro entre 0 e 59) e nMs (inteiro entre 0 e 999 para os milissegundos). Se nSeg é fornecido, nMin também deve ser dado. Se nMs é especificado, nMin e nSeg também devem ser.

Se um parâmetro é especificado fora da faixa, a função tenta atualizar os demais de forma coerente. Exemplo: se 70 é dado para nMin, a hora é aumentada de 1 e 10 é usado para nMin.

Exemplo:

            certo_dia = new Date();
            certo_dia.setHours(10);


setMilliseconds(nMs)

TopoFim
Especifica os milissegundos para um objeto Date. nMs deve ser um inteiro entre 0 e 999.

Se nMs é dado fora da faixa, o objeto Date é atualizado de forma coerente. Exemplo: se nMs é 1100, os segundos são aumentados de 1 e 100 é usado para os milissegundos.

Exemplo:

            certo_dia = new Date();
            certo_dia.setMilliseconds(500);


setMinutes(nMin [, nSeg, nMs])

TopoFim
Especifica os minutos para um objeto Date. nMin deve ser um inteiro entre 0 e 59. Os demais parâmetros são opcionais: nSeg (inteiro entre 0 e 59) e nMs (inteiro entre 0 e 999 para os milissegundos). Se nSeg é especificado, nMin também deve ser. Se nMs é dado, nMin e nSeg também devem ser.

Se um parâmetro é dado fora da faixa, a função tenta atualizar os demais de forma coerente. Exemplo: se nSeg é 80, os minutos são aumentados de 1 e 20 é usado para os segundos.

Exemplo:

            certo_dia = new Date();
            certo_dia.setMinutes(25);


setMonth(nMes [, nDia])

TopoFim
Especifica o mês de um objeto Date. nMes deve ser um inteiro entre 0 e 11 (0 janeiro, 1 fevereiro, etc). nDia é um parâmetro opcional para o dia do mês (inteiro entre 0 e 31).

Se um parâmetro é dado fora da faixa, a função tenta atualizar o objeto de forma coerente. Exemplo: se 12 é dado para o mês, o ano é aumentado de 1 e 1 é usado para o mês.

Exemplo:

            certo_dia = new Date();
            certo_dia.setMonth(4);


setSeconds(nSeg [, nMs])

TopoFim
Especifica os segundos de um objeto Date. nSeg deve ser um inteiro entre 0 e 59. nMs é um parâmetro opcional para os milissegundos (inteiro entre 0 e 999).

Se um parâmetro é dado fora da faixa, a função tenta atualizar o objeto de forma coerente. Exemplo: se 70 é dado para nSeg, os minutos são aumentados de 1 e 10 é usado para os segundos.

Exemplo:

            certo_dia = new Date();
            certo_dia.setSeconds(15);


setTime(nMs)

TopoFim
Especifica um valor para o objeto Date. nMs é um inteiro correspondente ao número de milissegundos desde 01 de janeiro de 1970 00:00:00 h.

Exemplo:

            certo_dia = new Date("May 15, 1998");
            outro_dia = new Date();
            outro_dia.setTime(certo_dia.getTime());


toLocaleString()

TopoFim
Retorna uma seqüência de caracteres (string) de data, com formato definido pelas configurações do sistema operacional.

Exemplo:

            <script language="JavaScript">
            var d = new Date();
            document.write(d.toLocaleString());
            </script>
            

E o resultado desse script é:


Se o seu sistema operacional não é inglês configurado para o padrão americano, notar a diferença com o exemplo dado no primeiro tópico, O objeto Date().

toUTCString()

TopoFim
Retorna uma string formatada de acordo com a convenção UTC. Pode variar de acordo com o sistema operacional.

Exemplo:

            data = new Date();
            var str = data.toUTCString();


Date.UTC(nA, nM, nD [, nHora, nMin, nSeg, nMs])

TopoFim
Retorna o número de milissegundos desde 01 de janeiro de 1970 00:00:00 h, hora universal.

nA: ano depois de 1900. nM: inteiro de 0 a 11 para o mês. nD: inteiro de 1 a 31 para o dia do mês. nHora: inteiro de 0 a 23 para as horas. nMin: inteiro de 0 a 59 para os minutos. nSeg: inteiro de 0 a 59 para os segundos. nMs: inteiro de 0 a 999 para os milissegundos.

Se um parâmetro for dado fora da faixa, a função tenta ajustar os demais de forma coerente. Exemplo: se 12 é usado para mês, ano é incrementado de 1 e 1 é usado para mês.

Deve sempre ser usado na forma Date.UTC(...) e não com um objeto Date criado.

Exemplo:

data_utc = new Date(Date.UTC(2004, 11, 15, 12, 0, 0));
Melhor visto com
1024x768 px

Termos de uso