Момент часовой пояс и летнее время - PullRequest
0 голосов
/ 04 декабря 2018

Я использую этот код для получения разницы GMT для определенного часового пояса:

var TimeZone = 'America/New_York';
console.log('GMT Offset  ' + moment().tz(TimeZone).utcOffset().toString());

Будет ли этот код также учитывать DST?

1 Ответ

0 голосов
/ 04 декабря 2018

Да, moment.tz() учитывает переход на летнее время. docs явно об этом:

Конструктор moment.tz принимает все те же аргументы, что и конструктор момента, но использует последний аргумент в качестве идентификатора часового пояса ..
...
Этот конструктор поддерживает DST и будет использовать правильное смещение при разборе.

var TimeZone = 'America/New_York';
console.log('Winter GMT Offset  ' + moment.tz('2018-12-04', TimeZone).utcOffset()/60);
console.log('Summer GMT Offset  ' + moment.tz('2018-06-04', TimeZone).utcOffset()/60);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.2/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.23/moment-timezone-with-data-2012-2022.min.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...