Момент недопонимания utcOffset

Я работаю с моментом и моментом часового пояса, и я не понимаю. Может кто-нибудь объяснить мне, почему это происходит?

ЭТО (что я и хочу):

moment('2018-11-28T00:00:00.000-02:00').toISOString()

Печать 2018-11-28T02:00:00.000Z

НО:

moment('2018-11-28T00:00:00.000').zone('-02:00').toISOString()
moment('2018-11-28T00:00:00.000').utcOffset('-02:00').toISOString()

Обе печати 2018-11-27T23:00:00.000Z

PD: моя зона GMT+1.

Почему разные? это не должно быть равным? Как установить смещение (не в конструкторе, а с помощью метода после того, как у меня есть де-моментальный объект)?

Спасибо! BR

1 ответ

Решение

Как я вижу, вы хотите сохранить существующее время суток при использовании метода utcOffset. Он принимает второй параметр, который является логическим. Как сказано в документации:

Передача true сохранит то же местное время, но за счет выбора другой точки в Universal Time.

// "2018-11-28T02:00:00.000Z"
moment('2018-11-28T00:00:00.000').utcOffset('-02:00', true).toISOString();

Для получения дополнительной информации проверьте документацию

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