new Date() Javascript no funciona en Safari

Quizás manejando una fecha en javascript nos devuelva NaN o Invalid Date.

new Date('2017-11-14 20:00:00');

Si tecleamos el anterior código en la consola de safari (para hacerlo más rapido);
nos devolverá el siguiente error:

errorjavascritpnewdatesafari

En Safari no va a funcionar por problemas de codificación… concretamente por «ECMAScript 5 ISO-8601 format support»

Ya que espera la fecha en formato:
2017-11-14T20:00:00
Y se la estamos pasando:
2017-11-14 20:00:00

Para ello, podemos hacer un replace del espacio en blanco sobre la fecha que le pasamos.

new Date('2017-11-14 20:00:00'.replace(/\s/, 'T'));

Funcionará correctamente:
correctformatdatesafarijavascript

* Para abrir la consola de Safari debemos ir al menú «Desarrollador>Abrir inspector web«


Tu opinión es importante para mi, ¿Te ha resultado útil este artículo?

4 Comments

Ricardo

Mil gracias !!! Llevaba días intentando solucionar este problema y no entendía de dónde procedia.

Reply
kike

¡Hola Ricardo!

Gracias por escribir, me alegro que te haya solucionado el problema (:

¡Saludos!

Reply

Responder a kike Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*