2016-06-23 19 views
6

Ich versuche, die Liste aller verfügbaren Zeitzonen mit Zeit-Zeitzone in Knoten js wie diese zu erhalten -Wie die Liste aller verfügbaren Zeitzone mit Zeit-Zeitzone bekommen

var moment = require('moment-timezone'); 
var timeZones = moment.tz.names(); 
console.log(timeZones); 

ich die Zeitzonen bin immer in diesem Format -

'Europe/Mariehamn', 
'Europe/Minsk', 
'Europe/Monaco', 
'Europe/Moscow', 
'Europe/Nicosia', 
'Europe/Oslo', 
'Europe/Paris', 
'Europe/Podgorica', 
'Europe/Prague', 
'Europe/Riga', 
'Europe/Rome', 

Aber ich will die Zeitzonen in diesem Format bekommen -

(GMT +01:00) Africa/Brazzaville 
(GMT +01:00) Africa/Casablanca 
(GMT +01:00) Africa/Douala 
(GMT +01:00) Africa/El_Aaiun 
(GMT +01:00) Africa/Kinshasa 
(GMT +01:00) Africa/Lagos 
(GMT +01:00) Africa/Libreville 
(GMT +01:00) Africa/Luanda 
(GMT +01:00) Africa/Malabo 
(GMT +01:00) Africa/Ndjamena 
(GMT +01:00) Africa/Niamey 

Wie bekomme ich ?

+1

Welchen Offset möchten Sie anzeigen? Der Standard-Offset für das laufende Jahr? Der * aktuelle * Offset (der der Standard-Offset sein kann oder nicht), der Offset zu einem bestimmten Zeitpunkt? Welche Funktion wird die Liste in Ihrer Anwendung erfüllen? –

Antwort

5

Es gibt keine direkte Möglichkeit, das gewünschte Format direkt von moment-timezone zu erhalten.

Versuchen Sie wie folgt.

var moment = require('moment-timezone'); 
var timeZones = moment.tz.names(); 
var offsetTmz=[]; 

for(var i in timeZones) 
{ 
    offsetTmz.push(" (GMT"+moment.tz(timeZones[i]).format('Z')+")" + timeZones[i]); 
} 

Jetzt ist offsetTmz Array von Strings in dem gewünschten Format.

So benutze ich.

Hoffe, das wird Ihnen helfen.

+1

Genau! das ist, was ich gesucht habe. Danke Shrabanee. – Tanmoy

+2

Beachten Sie, dass dies Ihnen jetzt den Offset gibt. Dies ist möglicherweise nicht der Offset während der Standardzeit. Es wird sich in jeder Zeitzone ändern, die DST beobachtet. –

+0

@MaggiePint stimmte zu. – Shrabanee