Utilizo los marcos Moment.js y Moment-Timezone, y tengo un objeto de fecha Moment.js que está explícitamente en la zona horaria UTC. ¿Cómo puedo convertir eso a la zona horaria actual del navegador?
var testDateUtc = moment.tz("2015-01-30 10:00:00", "UTC");
var localDate = ???
Así que estaría bien si pudiera averiguar la zona horaria local de los usuarios; o, alternativamente, me gustaría convertir el objeto de fecha en otro objeto de datos que solo use la "zona horaria local", sin importar cuál sea realmente.
fuente
moment-timezone
bibliotecalocal
de hecho tiene en cuenta el horario de verano.EST
aCET
, mañana pondré un ejemplo si quieres comoNY
->Madrid
. Aceptaré el contraejemplo :)var dateFormat = 'YYYY-DD-MM HH:mm:ss'; var testDateUtc = moment.utc('2015-01-30 10:00:00'); var localDate = testDateUtc.local(); console.log(localDate.format(dateFormat)); // 2015-30-01 02:00:00
Ver: http://momentjs.com/docs/#/manipulating/local/
fuente
Esto es lo que hice:
var timestamp = moment.unix({{ time }}); var utcOffset = moment().utcOffset(); var local_time = timestamp.add(utcOffset, "minutes"); var dateString = local_time.fromNow();
¿Dónde
{{ time }}
está la marca de tiempo utc?fuente
Utilice la función utcOffset.
var testDateUtc = moment.utc("2015-01-30 10:00:00"); var localDate = moment(testDateUtc).utcOffset(10 * 60); //set timezone offset in minutes console.log(localDate.format()); //2015-01-30T20:00:00+10:00
fuente