Facebook pixel
>Blog>Programação
Programação

Como usar o JavaScript para obter a data e hora no fuso horário do Brasil

Obtendo a Data e Hora Atuais no Fuso Horário do Brasil com JavaScript.

Obtendo a Data e Hora Atuais no Fuso Horário do Brasil com JavaScript

Introdução

Quando se trata de desenvolvimento de aplicações web, muitas vezes precisamos lidar com datas e horas. É comum encontrarmos situações em que é necessário obter a data e hora atual, especialmente considerando o fuso horário do Brasil. Felizmente, isso pode ser facilmente feito utilizando JavaScript.

Obtendo a Data e Hora Atuais no Fuso Horário do Brasil

Para obter a data e hora atuais no fuso horário do Brasil com JavaScript, podemos usar o objeto Date e métodos relacionados. Primeiramente, vamos criar uma instância do objeto Date:

    
      const dataAtual = new Date();
    
  

Ao criar uma nova instância do objeto Date sem nenhum argumento, ele será automaticamente criado com a data e hora atuais do sistema. No entanto, devemos estar cientes de que esses valores serão baseados no fuso horário local da máquina em que o código está sendo executado. Portanto, precisamos ajustar para o fuso horário do Brasil.

Felizmente, o JavaScript possui o método toLocaleString() que permite ajustar a exibição de datas e horas conforme o fuso horário local especificado. Podemos utilizá-lo para obter a data e hora no fuso horário do Brasil da seguinte forma:

    
      const options = { timeZone: 'America/Sao_Paulo' };
      const dataHoraBrasil = dataAtual.toLocaleString('pt-BR', options);
    
  

Nesse exemplo, definimos a opção timeZone como 'America/Sao_Paulo', que corresponde ao fuso horário do Brasil. Ao utilizar o método toLocaleString() com essas opções, a data e hora serão formatadas de acordo com o fuso horário do Brasil.

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada

Como Configurar o Fuso Horário no JavaScript para o Brasil

Em algumas situações, pode ser necessário configurar o fuso horário no JavaScript para o Brasil. Isso geralmente ocorre quando estamos trabalhando com bibliotecas ou APIs que não possuem suporte para configuração automática do fuso horário.

Felizmente, o JavaScript oferece suporte para a configuração manual do fuso horário. Podemos utilizar a função Intl.DateTimeFormat().resolvedOptions() para obter as opções de formatação de datas e horas atualmente definidas pelo ambiente de execução. Em seguida, podemos modificar a opção timeZone para o fuso horário do Brasil.

Veja um exemplo de como fazer isso:

    
      // Obtém as opções de formatação de datas e horas atualmente definidas
      const opcoes = Intl.DateTimeFormat().resolvedOptions();
      opcoes.timeZone = 'America/Sao_Paulo';
  
      // Utiliza as novas opções para configurar o fuso horário do Brasil
      const formatador = new Intl.DateTimeFormat('pt-BR', opcoes);
    
  

Nesse exemplo, definimos a opção timeZone como 'America/Sao_Paulo', que corresponde ao fuso horário do Brasil. Em seguida, criamos uma nova instância do objeto Intl.DateTimeFormat() com as novas opções de formatação definidas.

Convertendo Horários em Fuso Horário Internacional para o Fuso Horário do Brasil

Em muitas situações, precisamos lidar com horários em diferentes fusos horários, seja para converter um horário local para o fuso horário do Brasil ou vice-versa. O JavaScript também nos oferece recursos para realizar essa conversão de forma simples e eficiente.

Uma forma de converter horários de um fuso horário internacional para o fuso horário do Brasil é utilizando o método toLocaleString() juntamente com a opção timeZone. Podemos definir o fuso horário de destino como 'America/Sao_Paulo' para obtermos a conversão correta.

Veja um exemplo de como realizar essa conversão:

    
      const dataHora = new Date('2023-10-27T15:30:00');
      const opcoes = {
        timeZone: 'America/Sao_Paulo',
        year: 'numeric',
        month: 'numeric',
        day: 'numeric',
        hour: 'numeric',
        minute: 'numeric',
        second: 'numeric',
      };
      const dataHoraBrasil = dataHora.toLocaleString('pt-BR', opcoes);
    
  

Nesse exemplo, criamos uma instância do objeto Date com um horário em um fuso horário internacional. Em seguida, definimos as opções para formatar a data e hora, incluindo o fuso horário do Brasil ('America/Sao_Paulo'). Ao utilizar o método toLocaleString() com essas opções, obtemos a conversão correta do horário para o fuso horário do Brasil.

Calculando Diferenças de Horário entre o Fuso Horário do Brasil e Outros Fusos Horários

Além de obter a data e hora no fuso horário do Brasil e converter horários entre fusos horários, é comum precisarmos calcular diferenças de horário entre o fuso horário do Brasil e outros fusos horários. O JavaScript nos oferece recursos que facilitam esse cálculo.

Para calcular diferenças de horário entre o fuso horário do Brasil e outro fuso horário, podemos utilizar o objeto Date juntamente com os métodos getTimezoneOffset() e getTime(). O método getTimezoneOffset() retorna a diferença em minutos entre o horário local e o horário UTC.

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada

Veja um exemplo de como realizar esse cálculo:

    
      const dataHoraBrasil = new Date();
      const dataHoraUtc = new Date(dataHoraBrasil.getTime() + (dataHoraBrasil.getTimezoneOffset() * 60000));
    
  

Nesse exemplo, obtemos a data e hora atual no fuso horário do Brasil utilizando uma instância do objeto Date. Em seguida, utilizamos o método getTimezoneOffset() para obter a diferença entre o horário local e o horário UTC, multiplicando por 60000 para obtermos o valor em milissegundos. Ao somar essa diferença ao valor retornado por getTime(), obtemos a data e hora correspondente em horário UTC.

Conclusão

Neste artigo, exploramos como usar o JavaScript para obter a data e hora no fuso horário do Brasil, configurar o fuso horário no JavaScript para o Brasil, converter horários em fuso horário internacional para o fuso horário do Brasil e calcular diferenças de horário entre o fuso horário do Brasil e outros fusos horários.

Esses recursos são essenciais para garantir que as datas e horas em nossas aplicações estejam corretas e alinhadas com o fuso horário do Brasil, proporcionando uma experiência consistente para os usuários. Lembre-se sempre de considerar os possíveis impactos de horário de verão e mudanças nas regras de ajuste de horário ao lidar com datas e horas em diferentes fusos horários.

Agora que você está familiarizado com essas técnicas, pode utilizá-las em seus projetos para obter e manipular datas e horas no fuso horário do Brasil com facilidade e precisão. Aproveite os recursos do JavaScript e garanta uma gestão eficiente do tempo em suas aplicações.

A Awari é a melhor plataforma para aprender sobre programação no Brasil.

Aqui você encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu próximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.

Já pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? Clique aqui para se inscrever na Awari e começar a construir agora mesmo o próximo capítulo da sua carreira em dados.

Nossa metodologia de ensino tem eficiência comprovada
Nossa metodologia de ensino tem eficiência comprovada Aprenda uma nova língua na maior escola de idiomas do mundo! Conquiste a fluência no idioma que sempre sonhou com uma solução de ensino completa. Quero estudar na Fluency
Nossa metodologia de ensino tem eficiência comprovada

Sobre o autor

A melhor plataforma para aprender tecnologia no Brasil

A Awari é a melhor maneira de aprender tecnologia no Brasil.
Faça parte e tenha acesso a cursos com aulas ao vivo e mentorias individuais com os melhores profissionais do mercado.