Javascript новый Дата () изменился в Firefox?
Так что мне было интересно, если javascript
функция Date()
недавно изменено для Firefox или даже других браузеров.
Сначала я получу вывод даты следующим образом: Mon Apr 13 2015 22:18:08 GMT+0200 (West-Europa (zomertijd))
Но теперь он выводит что-то вроде этого: 2015-04-13T20:15:18.322Z
У меня был скрипт, который зависел от первого формата, поэтому он сломался, пока в моем коде ничего не изменилось. Вот почему я начал расследование и обнаружил, что это проблема.
Мне было интересно, что случилось с этим. (Я не прошу решение для форматирования, просто интересно, почему оно отформатировано так)
Обновление 1: я подумал, что было бы полезно добавить номера версий протестированных мной браузеров (все с одинаковым результатом).
- Выпуск Firefox для разработчиков: 39.0a2 (2015-04-07)
- Iceweasel 31.4.0
- Firefox 37.0.1
Обновление 2: Пример кода:
new Date();
-- output -- Date 2015-04-13T20:57:39.622Z
Оказывается, это UTC
или же Zulu time
формат. Итак, теперь вопрос: почему он выводит дату в формате UTC, тогда как раньше этого не делалось.
1 ответ
new Date()
возвращает объект даты. Консоль в Firefox помогает вам как разработчику для отладки, и Mozilla, возможно, изменила представление объекта в консоли. Возможно, они сначала просто показали дату, на которой представлен объект, а теперь они показывают представление объекта, который вы можете исследовать (есть треугольник ▶, по которому вы можете щелкнуть, который расширяет представление и показывает больше свойств объекта).
Это не должно иметь значения для поведения ваших программ. Когда вы выводите дату на странице, вы не печатаете объект напрямую, а конвертируете его, например, в строку, которую вы получаете в случае new Date().toString()
, Такое поведение, скорее всего, не изменится без причины.