мое время так выглядит
moment(date).tz(TimeZone).format('h:mm a z')
1:02 pm EST
я бы хотел, чтобы он сказал
1:02 pm EDT
как я могу изменить его на летнее время
Я не могу сделать это в моменте
jun.tz('America/New_York').format('ha z'); // 8am EDT
dec.tz('America/New_York').format('ha z'); // 7am EST
зимой его всегда считают, что я думаю
Всякий раз, когда речь заходит о таких проблемах, как дата или время, если вы хотите получить индивидуальный результат, он помогает преобразовать код в класс даты. К счастью, dateJS библиотека javascript, которая занимается датой и временем, может помочь вам.
В отношении отображения летнего времени этот пример дает вам то, что вы хотите.
getTimezoneAbbreviation
Date.getTimezoneAbbreviation ( Number timezoneOffset, Boolean isDayLightSavingsTime ) : String
Returns a culture-specific timezone abbreviation based on a given offset and a boolean indicating whether daylight savings time is in effect.
Parameters
{Number timezoneOffset} The year.
{Boolean isDayLightSavingsTime} Whether the date instance is observing Daylight Saving Time (Summer Time)
Return Value
{String} The timezone abbreviation
Example
var today = Date.today(); Date.getTimezoneAbbreviation(today.getTimezoneOffset, today.isDayLightSavingsTime()); // "UTC", "GMT", "EST", "PDT", etc.