Учитывая текущее время UTC и определенный час дня, я хочу найти смещение часового пояса в минутах.Приведенная ниже функция работает (я думаю) для всех часовых поясов, когда час - полночь (за исключением нескольких часовых поясов, которые начинаются с 30 и 45 минут, но они все еще охватываются диапазоном часовых поясов, если он выполняется каждый час).
function getCurrentGlobalTimeOffset(currentGlobalTime) {
var currentGlobalHour = dateFormat(currentGlobalTime, 'H');
if (currentGlobalHour <= 11) {
var currentGlobalOffsetStart = currentGlobalHour * 60;
var currentGlobalOffsetEnd = (currentGlobalHour * 60) + 60;
} else {
var currentGlobalOffsetStart = (24 - currentGlobalHour) * -60;
var currentGlobalOffsetEnd = ((24 - currentGlobalHour) * -60) + 60;
}
return {
start: currentGlobalOffsetStart,
end: currentGlobalOffsetEnd
}
}
Я изо всех сил пытаюсь выяснить, как включить определенный час.Например, если я хочу получить смещение часового пояса для 9:00 утра по тихоокеанскому времени, ожидаемый результат в 2019-02-23T17:00:00.000Z
время UTC будет:
{
start: 480,
end: 540
}
Я также попытался найтибиблиотека, которая делает это, но мне не повезло.Насколько я могу судить, moment.js
не предлагает такую возможность.
Какой лучший способ сделать это?