¿Cómo puedo solucionar este problema para obtener el mismo resultado de ambos?
¿Está en la misma computadora?
– Aarón Digulla
27 de febrero de 2013 a las 10:39
@Sandeep, el punto principal es que Chrome agrega un desplazamiento de zona horaria mientras que Firefox no lo hace
– configuración regional predeterminada
27 de febrero de 2013 a las 10:43
@CuongLe ¿Has visto esta pregunta: stackoverflow.com/questions/9062863/…
– configuración regional predeterminada
27 de febrero de 2013 a las 10:44
Es Date {Wed Feb 27 2013 17:00:00 GMT+0000 (GMT)} para mí en ambos (Linux).
– maravilloso
27 de febrero de 2013 a las 10:45
El rincón del quisquilloso: «Hora UTC en formato JSON» – ¿Formato JSON? Precisamente, una queja común sobre JSON es que no define ningún formato de fecha en absoluto.
–Álvaro González
27 de febrero de 2013 a las 10:51
El formato correcto para UTC sería 2013-02-27T17:00:00Z (Z es para Zulu Time). Adjuntar Z si no está presente para obtener la cadena de fecha y hora UTC correcta.
Gracias. Esto funciona. ¡Pero hay un registro que dice que quedará obsoleto en el futuro! ¿Alguna idea por favor?
– Débora
23 de marzo de 2016 a las 17:21
muchas gracias, he estado sentado con este problema durante dos días, pero esta publicación resolvió todo.
– Jorge Piyal
25 de septiembre de 2017 a las 13:11
Bergi
Sí, desafortunadamente los algoritmos de análisis de fechas dependen de la implementación. Desde el especificación de Date.parse (que es usado por new Date):
La cadena se puede interpretar como una hora local, una hora UTC o una hora en alguna otra zona horaria, según el contenido de la cadena. La función primero intenta analizar el formato de la cadena de acuerdo con las reglas indicadas en Formato de cadena de fecha y hora (15.9.1.15). Si la cadena no se ajusta a ese formato, la función puede recurrir a cualquier heurística específica de la implementación o formatos de fecha específicos de la implementación.
para hacer el Date constructor no (tal vez) use la zona horaria local, use una cadena de fecha y hora con información de la zona horaria, por ejemplo "2013-02-27T17:00:00Z". Sin embargo, es difícil encontrar un formato que todos los navegadores analicen de manera confiable: IE<8 no reconoce el formato ISO (consulte JavaScript: qué navegadores admiten el análisis de la cadena de fecha ISO-8601 con Date.parse). Mejor, use una marca de tiempo de Unix, es decir, milisegundos desde época unixo use una expresión regular para descomponer la cadena en sus partes y luego introducirlas en Date.UTC.
Pero la especificación (15.9.1.15) en realidad dice: “El valor de un desplazamiento de zona horaria ausente es “Z””, por lo que NO debería depender de la implementación.
– sinelaw
12 de diciembre de 2013 a las 23:25
Bien, corrección. Parece un error en la especificación ES5.1 – la intención era hacer coincidir ISO-8601 donde falta Z significa hora local (por lo que Chrome coincide con ES5.1, Firefox e IE coinciden con ISO-8601)
– sinelaw
12 de diciembre de 2013 a las 23:34
@sinelaw: Gracias por seguir investigando ese punto. Sin embargo, independientemente de lo que indique la especificación, [old] los navegadores todavía lo hacen de manera diferente 🙂
– Bergi
12 de diciembre de 2013 a las 23:51
Extrañamente, el uso de Date.Parse vs. new Date solucionó el problema que tenía cuando Chrome convertía la fecha a la zona horaria local en lugar de tratarla como si ya estuviera en la zona horaria local.
– Rey de los hipócritas
21 de julio de 2014 a las 17:20
@KingOfHypocrites—eso es un poco raro como llamar al constructor Date con una cuerda se supone que es lo mismo que usar Fecha.parse.
– RobG
25 de enero de 2015 a las 6:18
Encontré una cosa aquí. Parece que la Consola del Inspector de Firefox nativo podría tener un error: si ejecuto “nueva fecha ()” en el Inspector nativo, muestra una fecha con zona horaria incorrecta, configuración regional GMT, pero ejecutando el mismo comando en la Consola de extensión de Firebug, la fecha mostrado usa mi zona horaria correcta (GMT-3:00).
Tormenta MJ
Noté que FireFox no devolvía el mismo resultado que Chrome. Parece que el formato que usa en kendo.toString para la fecha hace la diferencia.
El último resultado de la consola es lo que necesitaba:
MSIislam
Intenta usar moment.js. Va muy bien y de forma similar con todos los navegadores. viene con muchas opciones de formato. use moment(‘date’).format(“”) en lugar de New Date(‘date’)
¿Ha sido útil esta solución?
Tu feedback nos ayuda a saber si la solución es correcta y está funcionando. De esta manera podemos revisar y corregir el contenido.
Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos.
Configurar y más información
¿Está en la misma computadora?
– Aarón Digulla
27 de febrero de 2013 a las 10:39
@Sandeep, el punto principal es que Chrome agrega un desplazamiento de zona horaria mientras que Firefox no lo hace
– configuración regional predeterminada
27 de febrero de 2013 a las 10:43
@CuongLe ¿Has visto esta pregunta: stackoverflow.com/questions/9062863/…
– configuración regional predeterminada
27 de febrero de 2013 a las 10:44
Es
Date {Wed Feb 27 2013 17:00:00 GMT+0000 (GMT)}
para mí en ambos (Linux).– maravilloso
27 de febrero de 2013 a las 10:45
El rincón del quisquilloso: «Hora UTC en formato JSON» – ¿Formato JSON? Precisamente, una queja común sobre JSON es que no define ningún formato de fecha en absoluto.
–Álvaro González
27 de febrero de 2013 a las 10:51