new $k.FlexDateTime(value, month, day, hours, minutes)
Constructs a FlexDateTime from the argument(s), which can be a Date object, another FlexDateTime, undefined, or component values.
If undefined, all components of the returned FlexDateTime are undefined
Name | Type | Description |
---|---|---|
value |
optional
Date or FlexDateTime or year component |
|
month |
optional
Month number |
|
day |
optional
Day number |
|
hours |
optional
Hours |
|
minutes |
optional
Minutes |
Example
// All components are undefined
new $k.FlexDateTime();
// Current date
new $k.FlexDateTime(new Date());
// 2007-06-03 21:48
new $k.FlexDateTime(2007, 6, 3, 21, 48);
Represents a flexible date/time without timezone that allowes certain degrees of imprecision.
FlexDateTime has the following components, which can be set to an integer or undefined:
year, month number, day number, hours, minutes.
Note that a FlexDateTime has no seconds.
Methods
static$k.FlexDateTime.parse(string, language)
Parse the date/time string. Both ISO 8601 and localized strings are supported.
Name | Type | Description |
---|---|---|
string |
string |
The string representation |
language |
string |
optional
Language of the value. Either ISO 639-1 (2-letter code, e.g. "en") or ISO 639-2B (3-letter code, e.g. "eng"). If not defined, the current language will be used. |
Throws:
Type | Description |
---|---|
$k.exception.InvalidLanguage | If an invalid language was specified |
$k.exception.InvalidValue | If value is invalid |
Returns:
The parsed date/timecoversDate(date) : boolean
Returns true if the date is within the range of this flexible date
Name | Type | Description |
---|---|---|
date |
date |
Returns:
Type | Description |
---|---|
boolean |
equals() : boolean
Returns true if the values are equal
Returns:
Type | Description |
---|---|
boolean |
getDayNumber() : number
Returns the number of the day, e.g. 18 for 2011-03-18
Returns:
Type | Description |
---|---|
number |
getHours() : number
Returns the hours
Returns:
Type | Description |
---|---|
number |
getMinutes() : number
Returns the minutes
Returns:
Type | Description |
---|---|
number |
getMonthNumber() : number
Returns the number of the month.
Unlike Date.prototype.month(), this is not the 0-based month index,
so for January getMonthNumber() returns 1, not 0
Returns:
Type | Description |
---|---|
number |
getYear() : number
Returns the full year
Returns:
Type | Description |
---|---|
number |
maxDate() : Date
Returns the latest exact Javascript date that is within the range of this date/time, e.g. 2007-03-01T23:59:59.999 for the date 2007-03-01.
Assumes that this is a date/time of the local timezone
Returns:
Type | Description |
---|---|
Date |
maxUTCDate() : Date
Returns the latest exact Javascript date that is within the range of this date/time, e.g. 2007-03-01T23:59:59.999 for the date 2007-03-01.
Assumes that this is a date/time of the local timezone
Returns:
Type | Description |
---|---|
Date |
minDate() : Date
Returns the earliest exact Javascript date that is within the range of this date/time, e.g. 2007-03-01T0:00:00.0 for the date 2007-03-01.
Assumes that this is a date/time of the local timezone
Returns:
Type | Description |
---|---|
Date |
minUTCDate() : Date
Returns the earliest exact Javascript date that is within the range of this date/time, e.g. 2007-03-01T0:00:00.0 for the date 2007-03-01.
Assumes that this is an UTC date/time
Returns:
Type | Description |
---|---|
Date |
setDayNumber(day)
Sets the number of the day, e.g. 23 for 2012-05-23
Name | Type | Description |
---|---|---|
day |
number |
setHours(hours)
Sets the hours
Name | Type | Description |
---|---|---|
hours |
number |
setMinutes(minutes)
Sets the minutes.
Name | Type | Description |
---|---|---|
minutes |
number |
setMonthNumber(month)
Set the number of the month.
Unlike Date.prototype.month(), this is not the 0-based month index,
so for January pass 1 to setMonthNumber() , not 0.
Name | Type | Description |
---|---|---|
month |
number |
setValues(year, month, day, hours, minutes)
Sets all components of the FlexDateTime
Name | Type | Description |
---|---|---|
year |
number | |
month |
number | |
day |
number | |
hours |
number | |
minutes |
number |
setYear(year)
Sets the full year. The year is not modified, so setYear(99) sets the year 99, not 1999.
Name | Type | Description |
---|---|---|
year |
number |
toDate() : Date
Returns the date/time as a Javascript date object.
Assumes that this is a date/time of the local timezone
Returns:
Type | Description |
---|---|
Date |
toJSON()
Returns a string representing the date/time, similar to Date.prototype.toJSON ( key )
- See:
toString(language) : string
Returns the string representation. Equivalent to valueString()
Name | Type | Description |
---|---|---|
language |
string |
optional
Language of the value. Either ISO 639-1 (2-letter code, e.g. "en") or ISO 639-2B (3-letter code, e.g. "eng"). If not defined, the current language will be used. |
Throws:
Type | Description |
---|---|
$k.exception.InvalidLanguage | If an invalid language was specified |
Returns:
Type | Description |
---|---|
string |
toUTC()
Returns the date/time as a UTC date/time
Assumes that this is a local date/time
- Since:
- 4.1.0
toUTCDate() : Date
Returns the date/time as a Javascript date object.
Assumes that this is an UTC date/time
Returns:
Type | Description |
---|---|
Date |
valueOf() : number
Returns the internal millisecond value. Allows comparing date/time values, since the comparision operators call valueOf()
Returns:
Type | Description |
---|---|
number |
valueString(language) : string
Returns the string representation
Name | Type | Description |
---|---|---|
language |
string |
optional
Language of the value. Either ISO 639-1 (2-letter code, e.g. "en") or ISO 639-2B (3-letter code, e.g. "eng"). If not defined, the current language will be used. |
Throws:
Type | Description |
---|---|
$k.exception.InvalidLanguage | If an invalid language was specified |
Returns:
Type | Description |
---|---|
string |