O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

JavaScript - Date

2.217 visualizações

Publicada em

Vamos falar sobre o tipo Date, abordando a forma de armazenamento interno, explicando o que é a era Unix, a partir de onde as datas são calculadas, e também as 4 formas de criar um Date, a partir de sua função construtora.

Além disso, veremos os formatos RFC 2822 e também o ISO 8601, ambos aceitos na criação de uma data a partir de uma String e por fim estudaremos algumas operações da API de Date.

Publicada em: Tecnologia
  • Seja o primeiro a comentar

JavaScript - Date

  1. 1. JavaScript - Date Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br
  2. 2. Rodrigo Branas rodrigo.branas@agilecode.com.br http://www.agilecode.com.br Formado em Ciências da Computação pela UFSC e MBA em Gerenciamento de Projetos pela FGV, é arquiteto de software há mais de 15 anos, especialista nas linguagens Java e JavaScript. É também autor do livro AngularJS Essentials e de diversos artigos da revista Java Magazine. Além disso, é professor e palestrante, tendo participado da formação de mais de 1.000 desenvolvedores de software e apresentado mais de 100 palestras em eventos no Brasil e no exterior. Fundador da Agile Code, uma empresa de treinamento e consultoria, atualmente é apresentador de um canal no YouTube sobre JavaScript, AngularJS e muito mais!
  3. 3. Acompanhe a série Desvendando a linguagem JavaScript pelo YouTube em: http://www.youtube.com/rodrigobranas
  4. 4. Apesar de parecer mais simples, a data não é representada dessa forma...
  5. 5. Como assim?
  6. 6. Ela é representada pela quantidade de milissegundos desde o início da Era Unix
  7. 7. A Era Unix (Unix Epoch), ou Posix Time, teve início no dia 1 de janeiro de 1970 às 00:00:00 do Tempo Universal Coordenado, mais conhecido como UTC, referência a partir de onde se calculam os fusos horários do mundo inteiro.
  8. 8. Existem 4 maneiras diferentes de criar uma data!
  9. 9. Criando uma data, a partir da função construtora de Date, sem parâmetros 1. var hoje = new Date();
  10. 10. Invocando getTime para acessar sua representação interna em milissegundo 1. var hoje = new Date(); 2. hoje.getTime(); // 1429446304392
  11. 11. Criando uma data, passando como parâmetro o tempo em milissegundos 1. var natal = new Date(1419465600000);
  12. 12. Espera, o Natal não é em 25/12?
  13. 13. O cálculo é feito a partir de UTC ±00:00, também conhecido como Z, abreviação de Zulu Time
  14. 14. A hora no mundo em relação a UTC
  15. 15. Criando uma data, passando como parâmetro uma String 1. new Date("2014/12/25"); 2. // Thu Dec 25 2014 00:00:00 GMT-0200 (BRST) 3. new Date("12/25/2014"); 4. // Thu Dec 25 2014 00:00:00 GMT-0200 (BRST) 5. new Date("25/12/2014"); 6. // Invalid Date
  16. 16. Cuidado, os formatos oficialmente aceitos são RFC 2822 ou ISO 8601
  17. 17. RFC 2822 Thu Dec 25 2014 10:30:00 GMT-0200 (BRST)
  18. 18. Criando uma data, passando como parâmetro uma String RFC 2822 1. new Date("Thu Dec 25 2014"); 2. // Thu Dec 25 2014 00:00:00 GMT-0200 (BRST)
  19. 19. Criando uma data, passando como parâmetro uma String RFC 2822 1. new Date("Thu Dec 25 2014"); 2. // Thu Dec 25 2014 00:00:00 GMT-0200 (BRST) 3. new Date("Thu Dec 25 2014 10:30:00"); 4. // Thu Dec 25 2014 10:30:00 GMT-0200 (BRST)
  20. 20. ISO 8601 2014-12-25T10:30:00-02:00
  21. 21. Criando uma data, passando como parâmetro uma String ISO 8601 1. new Date("2014-12-25"); 2. // Wed Dec 24 2014 22:00:00 GMT-0200 (BRST)
  22. 22. Criando uma data, passando como parâmetro uma String ISO 8601 1. new Date("2014-12-25"); 2. // Wed Dec 24 2014 22:00:00 GMT-0200 (BRST) 3. new Date("2014-12-25T10:30:00"); 4. // Thu Dec 25 2014 08:30:00 GMT-0200 (BRST)
  23. 23. Criando uma data, passando como parâmetro uma String ISO 8601 1. new Date("2014-12-25"); 2. // Wed Dec 24 2014 22:00:00 GMT-0200 (BRST) 3. new Date("2014-12-25T10:30:00"); 4. // Thu Dec 25 2014 08:30:00 GMT-0200 (BRST) 5. new Date("2014-12-25T10:30:00Z"); 6. // Thu Dec 25 2014 08:30:00 GMT-0200 (BRST)
  24. 24. Criando uma data, passando como parâmetro uma String ISO 8601 1. new Date("2014-12-25"); 2. // Wed Dec 24 2014 22:00:00 GMT-0200 (BRST) 3. new Date("2014-12-25T10:30:00"); 4. // Thu Dec 25 2014 08:30:00 GMT-0200 (BRST) 5. new Date("2014-12-25T10:30:00Z"); 6. // Thu Dec 25 2014 08:30:00 GMT-0200 (BRST) 7. new Date("2014-12-25T10:00:00-02:00"); 8. // Thu Dec 25 2014 10:30:00 GMT-0200 (BRST)
  25. 25. Criando uma data, passando como parâmetro a própria data 1. new Date(2014, 11, 25); 2. // Thu Dec 25 2014 00:00:00 GMT-0200 (BRST) 3. new Date(2014, 11, 25, 10, 30, 00); 4. // Thu Dec 25 2014 10:30:00 GMT-0200 (BRST)
  26. 26. Os meses são contados a partir de 0
  27. 27. Date API • getDate – Retorna o dia • getDay - Retorna o dia da semana • getFullYear – Retorna o ano • getHours – Retorna as horas • getMilliseconds – Retorna os milisegundos • getMinutes – Retorna os minutos • getMonth – Retorna o mês • getSeconds – Retorna os segundos • getTime – Retorna o tempo em milisegundos • toString - Retorna a data em String

×