dst

0.0.4 • Public • Published

dst.js

Is it daylight savings time?

Designed for use in node as well as in-browser.

Date.prototype.isDST()

Returns true if the date is during daylight savings time.

(window || require('dst')).is_dst(date, [thresholds])

Available either directly via require or on the window object, is_dst is the function underlying the prototype method.

It accepts an additional thresholds argument, which should take the following form:

{
    "spring_forward":<integer offset from beginning of year in milliseconds>,
    "fall_back":<integer offset from beginning of year in milliseconds>,
}

nota bene

spring_forward need not be before fall_back -- in fact, in 50% of earthly hemispheres, it's just the opposite situation.

further, in other saner lands, there may be no thresholds to cross -- that is, there are happy, productive human beings that somehow survive without DST. in that case, both fields may be set to 0.

is_dst.find_thresholds()

Splits the year in two halves, and attempts to check at which point in the hemi-year Date#getTimezoneOffset changes values. Run once during the execution of the program. Uses a binary search -- cuts out at the granularity of one second.

May be used to provide valid thresholds to pass into is_dst, if so desired.

testing

in node:


$ npm install --dev dst
$ npm test dst

in browser: open this url

or:


$ git clone git@github.com:chrisdickinson/dst.js.git
$ cd dst.js
$ python -m SimpleHTTPServer
$ open http://localhost:8000/test/

LICENSE

MIT

Readme

Keywords

none

Package Sidebar

Install

npm i dst

Weekly Downloads

795

Version

0.0.4

License

MIT

Last publish

Collaborators

  • chrisdickinson