У меня есть даты, сохраненные в mongodb в формате UTC, например. "2016-01-28T00: 00: 00.000Z". В клиенте я использую moment.js для форматирования даты. Тем не менее, когда я создал момент этой конкретной даты, летнее время вступает в игру:Дата UTC с разных летних дневных скоростей с поправкой на текущий часовой пояс
>moment("2016-01-28T00:00:00.000Z").format()
"2016-01-27T19: 00: 00-05: 00"
Если я использую часовой пояс момента, чтобы отрегулировать это время, он не будет работать, потому что смещение -4 на данный момент, а не -5. Каков правильный способ настроить это время, так что вместо 1/27/16 я получаю 1/28/16, чего я хочу. На данный момент одно решение я, хотя о том, что, чтобы получить .utcOffset
в течение нескольких минут и добавьте к этому моменту моего времени:
moment("2016-01-28T00:00:00.000Z").add( -moment("2016-01-28T00:00:00.000Z").utcOffset(),'minutes').format()
«2016-01-28T00: 00: 00-05: 00 "
Однако я не уверен, что это лучший способ сделать это.
У вас есть смещение на вашем входе ('Z', что для UTC и эквивалентно' +00: 00'). См. Ответ в сообщении dup, чтобы понять, как использовать функцию parseZone для ее сохранения, или функцию 'utc' для использования только UTC. –