Невозможно получить сокращение часового пояса, используя момент-часовой пояс - PullRequest
0 голосов
/ 12 марта 2020

Я использую момент-часовой пояс, чтобы получить сокращение для часового пояса пользователя. Ниже приведен код, используемый для поиска аббревиатуры

var timeZone = moment.tz.guess(true);
var time = new Date();
var timeZoneOffset = time.getTimezoneOffset();
var abbr  = moment.tz.zone(timeZone).abbr(timeZoneOffset);
alert(timeZone+": " + abbr);

. Это предупреждение подходит для нескольких часовых поясов. Но для часового пояса America/La_Paz я получаю сокращение как -04. Нужно ли обновлять мой код или есть какой-либо другой способ получить правильное (как 3-символьное) сокращение?

Заранее спасибо !!

1 Ответ

0 голосов
/ 12 марта 2020

ваш код правильный, но момент-часовой пояс не хранит алфавитные сокращения для всех часовых поясов:

enter image description here

по сравнению с Америкой / Los_Angeles:

enter image description here

Америка / La_Paz фактически не имеет буквенно-временной зоны по умолчанию в алфавитном порядке, просто UT C -4.

Вы можете измените это сокращение на то, что вы хотите:

var pazZone = moment.tz.zone("America/La_Paz");
pazZone.abbrs = ["BOT"]
moment.tz([2012, 5], 'America/La_Paz').format('z'); // => BOT
...