https://github.com/benoitzugmeyer/date-timezone
Change the local timezone by patching the native Date objects.
https://github.com/benoitzugmeyer/date-timezone
Last synced: 8 months ago
JSON representation
Change the local timezone by patching the native Date objects.
- Host: GitHub
- URL: https://github.com/benoitzugmeyer/date-timezone
- Owner: BenoitZugmeyer
- License: isc
- Created: 2016-01-18T10:29:26.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2016-05-23T11:36:47.000Z (about 10 years ago)
- Last Synced: 2025-08-31T16:08:33.176Z (9 months ago)
- Language: JavaScript
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
=============
date-timezone
=============
Timezone aware :code:`Date` objects.
Install
=======
Node
----
::
npm install date-timezone
Browser
-------
::
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.
API
===
:code:`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`_.
:code:`dateTimezone.setGlobalTimezone(timezoneName)`
Set the global timezone to use when building dates with :code:`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.
:code:`dateTimezone.patch()`
Replace the native :code:`Date` constructor with the :code:`DateTimezone` constructor.
All new dates will respect the global timezone.
:code:`dateTimezone.unpatch()`
Restore the native :code:`Date` constructor if it has previously been replaced with
:code:`dateTimezone.patch()`.
:code:`dateTimezone.getNativeDate()`
Return the native :code:`Date` constructor, useful when :code:`patch()` has been
called.
Usage example
=============
.. code:: javascript
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)'
.. _moment-timezone: http://momentjs.com/timezone/
.. _native Date objects: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date