Estoy tratando de convertir la hora UTC a la hora local. He estado siguiendo este ejemplo desde este enlace: http://jsfiddle.net/FLhpq/4/light/ . Parece que no puedo obtener la salida local correcta. Por ejemplo, si son las 10:30 am aquí, en lugar de las 10:30, obtendré las 15:30. Aquí está mi código:
var date = moment.utc().format('YYYY-MM-DD HH:mm:ss');
var localTime = moment.utc(date).toDate();
localTime = moment(localTime).format('YYYY-MM-DD HH:mm:ss');
console.log("moment: " + localTime);
No importa lo que haga, la hora siempre sale a la hora UTC. Vivo en Houston, así que sé que la zona horaria es el problema. He seguido el código en el enlace, pero parece que puedo obtener la hora local. ¿Qué estoy haciendo mal?
javascript
date
momentjs
Brian Scroggins
fuente
fuente
moment().format('Z')
ymoment().format('ZZ')
puedo ayudarte. Además, eche un vistazo a(new Date()).getTimezoneOffset()
tal vez sea suficiente para su caso.utc(date)
. En la primera parte, la línea quevar local = ...
no la tiene puede ser engañosa.Prueba esto:
fuente
Prueba este JsFiddle
fuente
Nota: actualice el formato de fecha en consecuencia.
Formato de fecha
Formato de hora
fuente
Para convertir UTC a hora local
O quieres obtener directamente la hora local
fuente
He creado una función que convierte todas las zonas horarias en hora local.
Requisitos:
fuente