The DateTools class contains some extra functionalities for handling Date instances and timestamps.

In the context of Haxe dates, a timestamp is defined as the number of milliseconds elapsed since 1st January 1970.

Static methods

static inline days (n:Float):Float

Converts a number of days to a timestamp.

static inline delta (d:Date, t:Float):Date

Returns the result of adding timestamp t to Date d.

This is a convenience function for calling Date.fromTime(d.getTime() + t).

static format (d:Date, f:String):String

Format the date d according to the format f. The format is compatible with the strftime standard format, except that there is no support in Flash and JS for day and months names (due to lack of proper internationalization API). On Haxe/Neko/Windows, some formats are not supported.

var t = DateTools.format(, "%Y-%m-%d_%H:%M:%S");
// 2016-07-08_14:44:05

var t = DateTools.format(, "%r");
// 02:44:05 PM

var t = DateTools.format(, "%T");
// 14:44:05

var t = DateTools.format(, "%F");
// 2016-07-08

static getMonthDays (d:Date):Int

Returns the number of days in the month of Date d.

This method handles leap years.

static inline hours (n:Float):Float

Converts a number of hours to a timestamp.

static make (o:{seconds:Int, ms:Float, minutes:Int, hours:Int, days:Int}):Float

Build a date-time from several components

static inline minutes (n:Float):Float

Converts a number of minutes to a timestamp.

static parse (t:Float):{seconds:Int, ms:Float, minutes:Int, hours:Int, days:Int}

Separate a date-time into several components

static inline seconds (n:Float):Float

Converts a number of seconds to a timestamp.