¿El objeto Date
en Javascript utiliza alguna vez un calendario no gregoriano?¿Alguna vez el objeto Date usa un calendario no gregoriano?
Los MDN y MSDN docs describen los métodos en el objeto Date
y referencia UTC y IETF-compliant RFC 2822 timestamps.
El artículo de Wikipedia menciones
Días se identifican convencionalmente utilizando el calendario gregoriano, pero el número de día juliano también se puede utilizar.
La documentación de MDN y MSDN solo dice que los métodos que no son UTC hacen referencia a la "hora local", pero no definen qué es "hora local".
Estoy trabajando en la interacción con un servicio web que me está devolviendo algunos datos que incluyen un campo de día de año, que tengo que comparar con el día actual del año. Soy muy consciente de las dificultades de confiar en un momento preciso de la máquina de un usuario, y estoy de acuerdo con cualquier problema que resulte de zonas horarias malas y configuraciones de fechas falsas.
a mí respecta, sin embargo, acerca de los usuarios en lugares que no utilizan el calendario gregoriano, y cuáles son sus navegadores devolverá si uso las .getDate()
, .getMonth()
y .getFullYear()
métodos para calcular los días de año.
De modo que, en la práctica, ¿la "hora local" en Javascript se refiere a un sistema de calendario no gregoriano, como los calendarios hebreo o persa?
Estoy bastante seguro de que la "hora local" se refiere al desplazamiento de la zona horaria de UTC. Sin embargo, la pregunta sigue siendo interesante: puede 'getMonth()' alguna vez devolver algo más grande que 11, por ejemplo. Sospecho fuertemente que la respuesta es "no", pero no tengo evidencia. – Pointy
@Pointy, las especificaciones ECMA-262 dicen que la hora local == utc + ajuste de zona horaria + ajuste de horario de días de luz. Sin embargo, todos sabemos lo que dicen las especificaciones y lo que hacen los navegadores no siempre son lo mismo. – mpdonadio
Los días julianos no son un sistema de calendario por separado: un día juliano es simplemente el número fraccional de días desde el mediodía del 1 de enero de 4713 aC. Tipo de tiempo UNIX, excepto con días, y con una época mucho más antigua. https://en.wikipedia.org/wiki/Julian_day – duskwuff