Methods
format(date, definitionopt, nullable, localeopt, typeopt, nullable, optionsopt, nullable) → {String}
Returns a formatted string, describing the date in a verbose, non-technical way.
Under the hood, this uses Intl.DateTimeFormat, which is widely supported and conveniently to use for most widely used locales.
"definition" may be a format shortcut for "dateStyle" (and "timeStyle" if type is "datetime") or a format string, for a custom format, using these tokens:
YY 18 two-digit year; YYYY 2018 four-digit year; M 1-12 the month, beginning at 1; MM 01-12 the month, 2-digits; D 1-31 the day of the month; DD 01-31 the day of the month, 2-digits; H 0-23 the hour; HH 00-23 the hour, 2-digits; h 1-12 the hour, 12-hour clock; hh 01-12 the hour, 12-hour clock, 2-digits; m 0-59 the minute; mm 00-59 the minute, 2-digits; s 0-59 the second; ss 00-59 the second, 2-digits; SSS 000-999 the millisecond, 3-digits; Z +05:00 the offset from UTC, ±HH:mm; ZZ +0500 the offset from UTC, ±HHmm; A AM PM; a am pm;
Using these, you could create your own ISO string like this: "YYYY-MM-DDTHH:mm:ss.SSSZ"
If you use "full", "long", "medium" or "short" instead, you'll use the DateTimeFormatters built-in, preset format styles for localized dates, based on the given locale(s).
Parameters:
| Name | Type | Attributes | Default | Description | 
|---|---|---|---|---|
date | 
            
            Date | the date to format  | 
        ||
definition | 
            
            String | 
                
                    <optional> <nullable>  | 
            
            
                'long' | either a preset style to quickly define a format style, by setting shortcuts for dateStyle and timeStyle (if type is "datetime"), set to "none" or nullish value to skip quick format; alternatively, define this as a format string to use a custom format  | 
        
locale | 
            
            String | Array.<String> | 
                
                    <optional> | 
            
            
                'en-US' | locale to use for date format and text generation, use array to define fallback; always falls back to en-US if nothing else works  | 
        
type | 
            
            String | 
                
                    <optional> <nullable>  | 
            
            
                'datetime' | set to 'datetime', 'date' or 'time' to define which parts should be rendered  | 
        
options | 
            
            Object | 
                
                    <optional> <nullable>  | 
            
            
                null | options to pass to the Intl.DateTimeFormat constructor, is applied last, so should override anything predefined, if key is reset  | 
        
- Source:
 - See:
 
Returns:
- Type
 - String
 
Example
format(new Date(), 'de-DE', 'long', 'datetime', {timeZone : 'UTC'})
=> '12. Dezember 2023 um 02:00:00 UTC'
format(new Date(), 'YYYY-MM-DDTHH:mm:ss.SSSZ')
=> '2023-12-12T02:00:00'