Подтвердить что ты не робот

Использование Moment.js для отображения аббревиатуры локальной зоны пользователей

Я пытался использовать z или zz в формате для отображения часового пояса в конце строки и обнаружил, что он устарел. Z и ZZ работают для отображения -0700, но вместо этого я хочу, чтобы он показывал PDT.

У меня есть момент-время и файл данных, но я не могу понять, как использовать его для определения локального часового пояса клиента и отобразить что-то вроде:

2014-05-30T22: 56: 23.967 PDT

вместо:

2014-05-30T22: 56: 23,967

Можно ли использовать момент-часовой пояс для определения EST CST... MST PST?

4b9b3361

Ответ 1

По моменту времени 0,1.0 вы можете использовать дополнения форматирования, чтобы получить сокращение определенного часового пояса:

moment().tz("America/Los_Angeles").format('z');  // PST or PDT

Начиная с версии 0.5.0, теперь вы можете угадать локальный часовой пояс пользователя, который в сочетании с вышеупомянутой техникой позволяет сделать следующее:

moment().tz(moment.tz.guess()).format('z');

Предполагая, что догадка была правильной, на ней будет отображаться связанная аббревиатура.

Ответ 2

Вероятно, это не очень хороший способ, но я не хотел добавлять какие-либо дополнительные скрипты в свой проект для локального часового пояса, поэтому я исследовал объект-объект и получил локальный часовой пояс по коду, который я написал ниже:

 var test = momentUpdateDate._d.toString().substring(test.indexOf('(')+1, test.indexOf(')'));