Несоответствие времени в оболочке монго - PullRequest
1 голос
/ 06 февраля 2012

Когда я получаю объект даты и печатаю его в оболочке Монго, он отображает два разных времени следующим образом:> новая дата ()Пн Фев 06 2012 18:49:40 GMT + 0530 (IST)> printjson ({creat_at: new Date ()}){creat_at: ISODate ("2012-02-06T13: 19: 40.313Z")}

Два раза отличаются, в чем я не прав.

Ответы [ 2 ]

1 голос
/ 06 февраля 2012

Время не отличается, они точно такие же!Это просто одно и то же время, выраженное в разных часовых поясах.«Z» в ISODate означает «UTC» (или, как некоторые люди пытаются это назвать: GMT).Вы находитесь на IST (индийское стандартное время, я думаю), который в GMT + 0530.18:49:40 @ GMT + 5: 30 точно так же, как 13:19 @ GMT.

Когда я запускаю тот же код, который вы показали на оболочке, я получаю:

> new Date()
ISODate("2012-02-06T13:34:10.667Z")

Как видите, это тоже с "Z".Возможно, вы используете старую версию оболочки?

ура, Дерик

1 голос
/ 06 февраля 2012

Это потому, что mongodb всегда хранит даты в формате UTC, но javascript показывает ваше местное время. И printjson - встроенная функция оболочки mongodb, которая конвертирует дату из вашего местного часового пояса в формат utc. Таким образом, он показывает -5.30 часов назад от вашего текущего времени.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...