Использование 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?
Ответы
Ответ 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(')'));