A classe Date tem um dos métodos de construtor mais versáteis de todas as classes básicas. É possível chamá-la de quatro formas diferentes.
Primeiro, se não houver nenhum parâmetro, o construtor
Date()
retornará um objeto de Date que contém data e hora atuais, com base no seu fuso horário local. Eis um exemplo:
var now:Date = new Date();
Segundo, se houver um único parâmetro numérico, o construtor
Date()
irá tratá-lo como o número de milissegundos desde 1º de janeiro de 1970 e retornará um objeto de Date correspondente. Observe que o valor de milissegundos fornecido é tratado como o número de milissegundos desde 1º de janeiro de 1970, em UTC. No entanto, o objeto Date mostra valores no seu fuso horário local, a não ser que você use métodos específicos de UTC para recuperá-los e exibi-los. Se você criar um novo objeto Date usando um único parâmetro de milissegundos, leve em consideração a diferença de fuso entre o horário local e o UTC. As seguintes instruções criam um objeto Date definido como meia-noite do dia 1º de janeiro de 1970, em UTC:
var millisecondsPerDay:int = 1000 * 60 * 60 * 24;
// gets a Date one day after the start date of 1/1/1970
var startTime:Date = new Date(millisecondsPerDay);
Terceiro, é possível transmitir vários parâmetros numéricos para o construtor
Date()
. Esses parâmetros são tratados como ano, mês, dia, hora, minuto, segundo e milissegundo, respectivamente, e um objeto Date correspondente é retornado. Supõe-se que esses parâmetros de entrada estão no horário local, não no UTC. As seguintes instruções obtêm um objeto Date definido como meia-noite do dia 1º de janeiro de 2000, no horário local:
var millenium:Date = new Date(2000, 0, 1, 0, 0, 0, 0);
Quarto, é possível transmitir um parâmetro com uma única string para o construtor
Date()
. O construtor tentará analisar os componentes de data ou hora dessa string e retornará um objeto Date correspondente. Se você usar essa abordagem, é recomendado colocar o construtor
Date()
entre um bloco
try..catch
para detectar qualquer erro de análise. O construtor
Date()
aceita diversos formatos diferentes de sequências de caracteres (que estão listados na
Referência do ActionScript® 3.0 para Adobe® Flash® Platform
). A instrução a seguir inicializa um novo objeto Date usando um valor de string:
var nextDay:Date = new Date("Mon May 1 2006 11:30:00 AM");
Se o construtor
Date()
não conseguir analisar o parâmetro de string, não lançará uma exceção. No entanto, o objeto Date resultante terá um valor de data inválido.