oo-native-ext
Extensions to native objects
Install
npm install oo-native-ext
Extensions
String#toPascalCase()
Capitalizes the first letter of a string
"exampleString" == "ExampleString"
String#format(obj)
Formats a string with key => value pairs
"My {obj} is {color}";// "My car is blue" "It is {0} minutes and {1} seconds after {2}pm";// "It is 8 minutes and 12 seconds after 5pm"
Date#getDayWestern()
Retrieves the day of the week, with monday = 0, sunday = 6
"1 january 2014" == 0;"1 january 2014" == 1;
Date#getHoursPeriodic()
Retrieves the hours on a 12 hour clock
"1 january 2014 06:30" == 6"1 january 2014 18:30" == 6
Date#format(format, locale)
Formats a date
- format The format to use, values are wrapped in {}
- locale Object containing localization strings (defaults to english)
var date = "1 january 2014 19:30:44"; date == "1/1/14";date == "01-01-2014";date == "Monday 1 January 2014";date == "19:30:44"
Format
- s: seconds between 0 and 59
- ss: seconds between 00 and 59
- m: minutes between 0 and 59
- mm: minutes between 00 and 59
- h: hours between 1 and 12
- hh: hours between 01 and 12
- H: hours between 0 and 23
- HH: hours between 00 and 23
- d: day between 1 and 31
- dd: day between 01 and 31
- ddd: abbreviated name of day (mon, tue, ...)
- dddd: name of day (monday, tuesday, ...)
- M: month between 1 and 12
- MM: month between 01 and 12
- MMM: abbreviated name of month (jan, feb, ...)
- MMMM: name of month (january, february, ...)
- yy: year between 00 and 99
- yyyy: year
Locale
var locale = days: "Monday" "Tuesday" ... daysShort: "Mon" "Tue" ... months: "January" "February" ... monthsShort: "Jan" "Feb" ...;
Function#memoize()
Memoize the results in a function for optimization
var { if n == 0 return 1; return * n;}; ; // requires 5 recursive calls; // result is already known; // requires 1 call
Function#curry(params...)
Curry function parameters
var { return objproperty;}; name: "Ben" name: "Jan" name: "Bart";// ["Ben", "Jan", "Bart"]