У меня есть набор дат и времени, он отформатирован следующим образом:
01.07.2013 16:10
.
Я знаю, что мне нужно перестроить, чтобы соответствовать стандарту ISO, поэтому мне удалось получить строку вроде этого:
2013-07-01T16:10
.
Из этого мне нужно создать объект Date
. Прочитав здесь много вопросов об этом, я немного смущен тем, как добавить к нему часовой пояс. Все время в городе Нью-Йорк Города локального времени, и я также хочу, чтобы сохранить даты.
Так как Javascript берет часовой пояс с моей машины, я изменил его, чтобы быть тем из Нью-Йорка. Однако следующая часть меня путает больше всего:
> print(new Date("2013-07-01T16:10"))
Mon Jul 01 2013 16:10:00 GMT+2000 (EDT)
Вопрос: Почему он говорит GMT + 2000, когда моим местным временем является GMT-0400 (один из Нью-Йорка)? Это правильно'? Если нет, как это делается правильно?
--Updates: Я использую mongoDB 3.4.4
а версия интерпретатора - MozJS-38
. systemsetup -gettimezone
возвращает America/New_York
. Запуск mongo-express в хромовых шоу: Mon Jul 01 2013 06:00:00 GMT+0200 (EDT)
для ISODate("2013-07-01T04:00:00.000Z")
сохранен, но оболочка говорит Tue Jul 02 2013 00:00:00 GMT+2000 (EDT)
для print(new Date("2013-07-01T04:00:00.000Z"));
,
Вы не указали смещение часового пояса при создании объекта Date
.
> new Date("2013-07-01T16:10-04:00")
2013-07-01T20:10:00.000Z