Skip to content

Create and manipulate time zone specific dates as regular Date objects.

License

Notifications You must be signed in to change notification settings

smhg/date-time-zone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

date-time-zone Build status

Create and manipulate time zone specific dates as regular Date objects. (Abuses)Uses Intl and Proxy.

Example

const { createDate, detectTimeZone } = require('@smhg/date-time-zone');

if (!detectTimeZone()) {
  console.warn('Time zones not (fully) supported');
}

const timeZone = 'Europe/Berlin';
createDate({ timeZone }); // now

createDate(2019, 0, 1, { timeZone }); // start of 2019 in Berlin

const date = createDate({ timeZone });
date.setHours(0, 0, 0, 0);
console.log(date.toString()); // start of today in Berlin

Usage

When you need to work with a Date instance in another time zone, replace new Date with createDate and add an options object ({ timeZone: '...' }) as the last parameter.

All other usage is the same as regular Date objects, with manipulations (setDate, setHours, ...) happening in the specified time zone and toString() returning the date and time in the specified time zone.

About

Create and manipulate time zone specific dates as regular Date objects.

Resources

License

Stars

Watchers

Forks

Packages

No packages published