date

v2.0.5
ES spec-compliant `Date` shim/polyfill/replacement that works as far down as ES3
shim polyfill javascript ecmascript es-shim API Date

date Version Badge

github actions coverage dependency status dev dependency status License Downloads

npm badge

ES spec-compliant shim for Date. Invoke its "shim" method to shim Date if it is unavailable or noncompliant.

This package implements the es-shim API “multi” interface. It works in an ES3-supported environment, and complies with the spec.

Most common usage:

var assert = require('assert');

var shims = require('date');

assert.deepEqual(shims, [
    'Date',
    'Date.prototype.getFullYear',
    'Date.prototype.getMonth',
    'Date.prototype.getDate',
    'Date.prototype.getUTCDate',
    'Date.prototype.getUTCFullYear',
    'Date.prototype.getUTCMonth',
    'Date.prototype.toUTCString',
    'Date.prototype.toDateString',
    'Date.prototype.toString',
    'Date.prototype.toISOString',
    'Date.prototype.toJSON',
    'Date.now',
    'Date.parse',
]);

require('date/auto'); // will be a no-op if not needed

assert.ok(new Date() instanceof Date);
assert.equal(typeof Date.now(), 'number');

// etc, with all the Date methods you expect

Tests

Simply clone the repo, npm install, and run npm test

npm i date

Metadata

  • MIT
  • >= 0.4
  • Jordan Harband
  • released 3/23/2024

Downloads