Я пробовал что-то вроде этого:
function set_local_time(utcSeconds) {
var d = new Date(0); // The 0 sets the date to the epoch
d.setUTCSeconds(utcSeconds); //update date object with utcSeconds
return d.toLocaleTimeString() + ', ' + d.toLocaleDateString() + ' ' + d.toLocaleTimeString('en-us',{timeZoneName:'short'}).split(' ')[2] //time, date timezone
}
, который берет время и конвертирует его в местное время пользователя.Он отлично работает в США (отображает PDT
, EDT
и т. Д.), Но за пределами США он просто отображает смещение по Гринвичу (например, GMT+1
, GMT+8
и т. Д.).
Существует ли способ отображения сокращенного названия часового пояса пользователя на международном уровне?Таким образом, вместо GMT+1
для Лондона будет отображаться BST
вместо?