Al escribir una aplicación web, tiene sentido almacenar (lado del servidor) todas las fechas en el DB como marcas de tiempo UTC.
Me sorprendió cuando noté que no se podía hacer mucho de forma nativa en términos de manipulación de zona horaria en JavaScript.
Extendí el objeto Fecha un poco. ¿Tiene sentido esta función? Básicamente, cada vez que envíe algo al servidor, será una marca de tiempo formateada con esta función ...
¿Puedes ver algún problema importante aquí? ¿O tal vez una solución desde un ángulo diferente?
Date.prototype.getUTCTime = function(){
return new Date(
this.getUTCFullYear(),
this.getUTCMonth(),
this.getUTCDate(),
this.getUTCHours(),
this.getUTCMinutes(),
this.getUTCSeconds()
).getTime();
}
Simplemente me parece un poco complicado. Y tampoco estoy tan seguro sobre el rendimiento.
new Date().toString()
le mostrará la representación horaria actual de la zona horaria, new Date().toUTCString()
le mostrará la reproducción de la hora UTC, pero siemprenew Date().getTime()
es UTC , porque eso es lo que la hora Unix se define como: "La hora Unix (también conocida como hora POSIX o hora de época) es un sistema para describir instantes en el tiempo, definido como el número de segundos que han transcurrido desde las 00:00:00 hora universal coordinada (UTC), jueves 1 de enero de 1970, sin contar los segundos bisiestos ".