Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Display users local zone abbreviation

Tags:

I was trying to use z or zz in format to display the timezone at the end of the string and found that it's deprecated. Z and ZZ work to display -0700, but instead I want it to show PDT.

I got moment-timezone and the data file, but I can't figure out how to use it to determine the client's local time zone and display something like:

2014-05-30T22:56:23.967 PDT

instead of:

2014-05-30T22:56:23.967

Is it possible to use moment-timezone to determine EST, CST, MST, PST, etc?

like image 901
HypeXR Avatar asked Jun 12 '14 00:06

HypeXR


People also ask

How does moment determine timezone?

Moment Timezone uses the Internationalization API ( Intl. DateTimeFormat(). resolvedOptions(). timeZone ) in supported browsers to determine the user's time zone.


1 Answers

As of moment-timezone 0.1.0, you can use the formatting additions to get the abbreviation of a specific time zone:

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

As of version 0.5.0, you can now guess the user's local time zone, which when combined with the above technique, allows you to do the following:

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

Assuming the guess was correct, it will display the associated abbreviation.

like image 132
Matt Johnson-Pint Avatar answered Oct 20 '22 12:10

Matt Johnson-Pint