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(), Такое поведение, скорее всего, не изменится без причины.

Другие вопросы по тегам