Tengo un caso en el que estoy tratando de calcular timezoneOffset desde la zona horaria seleccionada.
En el ejemplo, estoy guardando la hora en la base de datos en formato UTC. Ahora estoy calculando la zona horaria según la ubicación/zona horaria del usuario y configurando el desplazamiento de la zona horaria.
Cómo puedo crear un mapeo que tenga un desplazamiento de -330 si desde qué zona horaria quiero calcularlo para toda la zona horaria. Ejemplo [{ zona horaria: 'Australia/Sydney', desplazamiento: '660' }], etc.
de tal manera que puedo buscar -330 offset es para qué timeozne.
Supongamos -330 de compensación si para qué zona horaria? Donde puedo crear mapas con desplazamiento y zona horaria.
Ejemplo El usuario a es de Australia/Sydney , entonces, ¿cómo puedo verificar el desplazamiento de la zona horaria desde UTC?
Solo una nota de que tengo varias zonas horarias para admitir en general más de 30 zonas horarias.
Y quiero algo cálculo muy preciso.
Sé que momentjs usándolo puedo hacerlo, pero de repente no sé cómo.
con momentjs obtengo UTCoffser de Australia/Sydney //660
¿Alguien puede ayudarme a derivar la fecha exacta aquí?
Si tiene el nombre IANA para su zona horaria, puede pasarlo a Intl.DateTimeFormat y filtrar y calcular el desplazamiento:
const getUTCOffset = timezone => Intl.DateTimeFormat([], {timeZone: timezone, timeZoneName: 'shortOffset'}).formatToParts().find(o => o.type === 'timeZoneName').value.match(/\-?\d+/)[0]*60; console.log(getUTCOffset('Australia/Sydney'))Si está ejecutando este código en el navegador del usuario y desea usar la zona horaria del usuario, entonces es aún más simple:
new Date().getTimezoneOffset()