UNPKG

js-date-fairy

Version:

A JS date library

121 lines (91 loc) 2.84 kB
# JS Date Fairy ![version](https://img.shields.io/npm/v/js-date-fairy.svg) ![downloads](https://img.shields.io/npm/dm/js-date-fairy.svg) JS Date Fairy is a minimalistic, user-friendly custom date library that enhances the native JavaScript Date object with more accessible methods and human-readable outputs. Installation ------------ Using npm: ``` npm install js-date-fairy ``` Using yarn: ``` yarn add js-date-fairy ``` Usage ----- Here's a basic usage example: ```javascript const D = require('js-date-fairy'); const myDate = new D(2023, 4, 6); console.log(myDate.year); // Outputs: 2023 ``` Documentation ----------------- ### Constructor - new D(year, month, day): Creates a new D object. ### Properties - year: Returns the full year. - yr: Returns the last two digits of the year. - month: Returns the full month name. - mon: Returns the short month name. - day: Returns the full weekday name. - dy: Returns the short weekday name. - date: Returns the date of the month. - hours: Returns the hour of the date. - mins: Returns the minutes of the date. - secs: Returns the seconds of the date. ### Methods - format(mask = 'Y M D'): Format the date according to the provided mask. >* 'Y' -> 2019 (Year full) >* 'y' -> 19 (Year short) >* 'M' -> July (Month full) >* 'm' -> Jul (Month short) >* 'D' -> 01 (date padded) >* 'd' -> 1 (date) >* 'L' -> Monday >* 'l' -> Mon >* '#' -> 1st (date with ordinal suffix: st, nd, rd or th) >* 'H' -> 05 (Hours padded) >* 'h' -> 5 (Hours) >* 'I' -> 08 (Minutes padded) >* 'i' -> 8 (Minutes) >* 'S' -> 04 (Seconds padded) >* 's' -> 4 (Seconds) - getOrdinal(n): Returns the ordinal representation of a number. - when(): Provides a human-readable description of 'when' a date will occur relative to now. Examples -------- ### Creating a Date Object ```javascript const dateObj = new D(2023, 4, 6); ``` ### Accessing Properties ```javascript console.log(dateObj.year); // 2023 console.log(dateObj.yr); // 23 console.log(dateObj.month); // May console.log(dateObj.mon); // May console.log(dateObj.day); // Thursday console.log(dateObj.dy); // Thu console.log(dateObj.date); // 6 ``` ### Using Methods 1. format() ```javascript console.log(dateObj.format('Y-M-D')); // 2023-May-06 console.log(dateObj.format('D/M/y')); // 06/May/23 console.log(dateObj.format('l, # M, Y')); // Thursday, 6th May, 2023 ``` 1. getOrdinal() ```javascript console.log(dateObj.getOrdinal(1)); // 1st console.log(dateObj.getOrdinal(22)); // 22nd ``` 1. when() ```javascript const pastDate = new D(2021, 1, 1); console.log(pastDate.when()); // Outputs: 2 years, 8 months ago (example) const futureDate = new D(2024, 1, 1); console.log(futureDate.when()); // Outputs: 4 months from now (example) ```