@version 17.7.0
@date 2017-07-14
@stability 2 - Unstable

A small library for parsing and formatting dates that extends native Date object.
npm install date-format-lite –save
require("date-format-lite")
date-format-lite adds format(mask, [zone]) method to native Date.prototype.
String - Output format, e.g. hh:mm:ss.Number, optional - UTC offset in hours, e.g. -6.5.var now = new Date() // Date {Wed Jul 10 2013 16:47:36 GMT+0300 (EEST)}
now.format("iso") // 2013-07-10T13:47:36Z
now.format("hh:mm") // 16:47 (local time)
now.format("UTC:hh:mm") // 13:47
now.format("hh:mm", 2.5) // 16:17
date-format-lite adds add(amount, [unit]) method to native Date.prototype.
Number - Time to add, negative number will be subtracted.String, optional - e.g. seconds, minutes, hours, days, weeks, months, years.now.format("iso") // 2013-07-10T13:47:36Z
now.add(1, "days").format("iso") // 2013-07-11T13:47:36Z
now.add(-2, "hours").format("iso") // 2013-07-11T11:47:36Z
date-format-lite adds date([outFormat], [outZone], [inZone]) method
to native String.prototype and Number.prototype.
String, optional - Output format, e.g. hh:mm:ss.
Returns date object when format not specified.Number, optional - UTC offset for output in hours, e.g. -6.5.Number, optional - UTC offset in input in hours, e.g. -6.5."2013-07-10".date() // Date {Wed Jul 10 2013 03:00:00 GMT+0300 (EEST)}
"2013-07-10T13:47:36Z".date() // Date {Wed Jul 10 2013 16:47:36 GMT+0300 (EEST)}
"10/07/2013".date() // Date {Wed Jul 10 2013 03:00:00 GMT+0300 (EEST)}
Date.middleEndian = true
"10/07/2013".date() // Date {Mon Oct 07 2013 03:00:00 GMT+0300 (EEST)}
// Change format
"10/07/2013".date("YYYY-MM-DD")// 2013-07-10
Date.masks.my = '"DayNo "D'
now.format("my") // DayNo 10
Date.masks.default = 'YYYY-MM-DD hh:mm:ss'
now.format() // 2013-07-10 13:47:36
// Add to estonian-lang.js
Date.names = "Jaan Veeb Märts Apr Mai Juuni Juuli Aug Sept Okt Nov Dets jaanuar veebruar märts aprill mai juuni juuli august september oktoober november detsember P E T K N R L pühapäev esmaspäev teisipäev kolmapäev neljapäev reede laupäev".split(" ")
// Change AM and PM
Date.am = "a.m."
Date.pm = "p.m."
See tests for more examples
It should work IE6 and up but automated testing is currently broken.
Copyright (c) 2012-2016 Lauri Rooden <lauri@rooden.ee>
The MIT License
Have an update or suggestion for this note? You can edit it and send me a pull request.
Since 2013 to 2015