javascript конвертер часовых поясов
Мне нужен способ для преобразования времени в будущем в разные часовые пояса, не полагаясь на компьютерное время пользователя.
Во время регистрации пользователь указывает свой часовой пояс. Когда он входит в систему, я вычисляю смещение в минутах между временем UTC и его временем и вставляю это смещение на страницу, чтобы функция javascript могла выполнять преобразования. Что-то вроде этого:
var TheUTCTime = new Date(UserTime.getTime() - TimeZoneOffsetInMinutes * 60000);
и вот так наоборот:
var TheUserTime = new Date(UTCTime.getTime() + TimeZoneOffsetInMinutes * 60000);
Это очень хорошо работает для преобразования времени, если смещение не меняется. Например, из-за перехода на летнее время между американским EST и UTC разница составляет 300 или 360 минут в зависимости от месяца в году.
Мои функции хорошо работают для преобразования сегодняшней даты, но я хотел бы, чтобы что-то могло: 1) делать то же самое для любого дня года и 2) не зависит от внутренних часов пользователя или часового пояса.
Как я мог это сделать?
Благодарю.