¿Cómo convertir la fecha a otra zona horaria en JavaScript?

Método 1: usar el método Intl.DateTimeFormat() y format(): El método Intl.NumberFormat() se usa para representar números en un formato sensible al idioma. Se puede utilizar para representar divisas o porcentajes según la configuración regional especificada.
El método format() de este objeto se utiliza para devolver una string de la fecha con la configuración regional y las opciones de formato especificadas. Esto formateará la fecha a la zona horaria requerida y devolverá una string con la fecha convertida.

Sintaxis:

usaTime = date.toLocaleString("en-US", {timeZone: "America/New_York"});

Ejemplo:

<!DOCTYPE html>
<html>
      
<head>
    <title>
        How to convert date to another
        timezone in JavaScript?
    </title>
</head>
  
<body>
    <h1 style="color: green">
        GeeksForGeeks
    </h1>
      
    <b>
        How to convert date to another
        timezone in JavaScript?
    </b>
      
    <p>Check the console for the output</p>
      
    <button onclick="changeTimezone()">
        Change timezone
    </button>
      
    <script type="text/javascript">
      
        function changeTimezone() {
      
            let date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
              
            console.log('Given IST datetime: ' + date);
          
            let intlDateObj = new Intl.DateTimeFormat('en-US', {
                timeZone: "America/New_York"
            });
          
            let usaTime = intlDateObj.format(date);
            console.log('USA date: ' + usaTime);
        }
    </script>
</body>
  
</html>

Producción:

  • Producción:
    output-tolocale
  • Salida de la consola:
    console-1

Método 2: Usar el método toLocaleString(): El método toLocaleString() se usa para devolver una string que formatea la fecha de acuerdo con la configuración regional y las opciones especificadas. Convertirá la fecha en la que se utiliza el método de una zona horaria a otra.

Sintaxis:

usaTime = date.toLocaleString("en-US", {timeZone: "America/New_York"});

Ejemplo:

<!DOCTYPE html>
<html>
      
<head>
    <title>
        How to convert date to another
        timezone in JavaScript?
    </title>
</head>
  
<body>
    <h1 style="color: green">
        GeeksForGeeks
    </h1>
      
    <b>
        How to convert date to another
        timezone in JavaScript?
    </b>
      
    <p>Check the console for the output</p>
      
    <button onclick="changeTimezone()">
        Change timezone
    </button>
      
    <script type="text/javascript">
      
        function changeTimezone() {
      
            let date = 
                new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
            console.log('Given IST datetime: ' + date);
          
            let usaTime = 
                date.toLocaleString("en-US", {
                    timeZone: "America/New_York" 
                });
            console.log('USA datetime: ' + usaTime);
        }
    </script>
</body>
  
</html>

Producción:

  • Producción:
    output-intl
  • Salida de la consola:
    console-1

Publicación traducida automáticamente

Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *