Timezone aware Date
objects.
npm install date-timezone
git clone https://github.com/BenoitZugmeyer/date-timezone cd date-timezone npm install npm run dist
Then include either dist/date-timezone.js
or dist/date-timezone-with-moment.js
in your
project. If you include the first one, make sure you also include moment-timezone.
You can always use webpack
or browserify
to include this in your project.
new dateTimezone.DateTimezone(...)
- Construct a new date with the current global timezone. This constructor and the returned object have the same API as native Date objects.
dateTimezone.setGlobalTimezone(timezoneName)
Set the global timezone to use when building dates with
DateTimezone
. By default, the global timezone is the current runtime timezone. It supports any timezone name supported by moment-timezone.Call without argument to reset the global timezone to the runtime timezone.
dateTimezone.patch()
- Replace the native
Date
constructor with theDateTimezone
constructor. All new dates will respect the global timezone. dateTimezone.unpatch()
- Restore the native
Date
constructor if it has previously been replaced withdateTimezone.patch()
. dateTimezone.getNativeDate()
- Return the native
Date
constructor, useful whenpatch()
has been called.
dateTimezone.setGlobalTimezone("America/New_York");
new Date(2016, 1, 1).toString();
// 'Mon Feb 01 2016 00:00:00 GMT+0100 (CET)' or whatever local timezone you're on.
new dateTimezone.DateTimezone(2016, 1, 1).toString();
// 'Fri Jan 01 2016 00:00:00 GMT-0500 (EST)'
dateTimezone.patch();
new Date(2016, 1, 1).toString();
// 'Fri Jan 01 2016 00:00:00 GMT-0500 (EST)'