globalization.stringToDate
Parses a date formatted as a string according to the client's user preferences and calendar using the time zone of the client and returns the corresponding date object.
navigator.globalization.stringToDate(dateString, successCB, errorCB, options);
Description
It returns the date to the success callback with a properties object as a parameter. That object should have the following properties:
- year {Number}: The four digit year
- month {Number}: The month from (0 - 11)
- day {Number}: The day from (1 - 31)
- hour {Number}: The hour from (0 - 23)
- minute {Number}: The minute from (0 - 59)
- second {Number}: The second from (0 - 59)
- millisecond {Number}: The milliseconds (from 0 - 999), not available on all platforms
The inbound dateString
parameter should be of type String
.
options.formatLength
can be 'short', 'medium', 'long', or 'full'.
options.selector
can be 'date', 'time' or 'date and time'.
The default options are {formatLength:'short', selector:'date and time'}
.
The options parameter is optional.
If there is an error parsing the date string, then the errorCB callback is invoked with a GlobalizationError object as a parameter. The expected code for this error is GlobalizationError.PARSING_ERROR.
Supported Platforms
- Android
- BlackBerry WebWorks (OS 5.0 and higher)
- iPhone
- Windows Phone 8
Quick Example
In the case when the browser is set to the en_US locale, this should display a popup dialog with text similar to "month:8 day:25 year:2012". Note that the month integer is one less than the string, as the month integer represents an index.
navigator.globalization.stringToDate(
'9/25/2012',
function (date) {alert('month:' + date.month +
' day:' + date.day +
' year:' + date.year + '\n');},
function () {alert('Error getting date\n');},
{selector:'date'}
);
Full Example
<!DOCTYPE HTML>
<html>
<head>
<title>Cordova</title>
<script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
<script type="text/javascript" charset="utf-8">
function checkStringDate() {
navigator.globalization.stringToDate(
'9/25/2012',
function (date) {alert('month:' + date.month +
' day:' + date.day +
' year:' + date.year + '\n');},
function () {alert('Error getting date\n');},
{selector:'date'}
);
}
</script>
</head>
<body>
<button onclick="checkStringDate()">Click for parsed date</button>
</body>
</html>
Windows Phone 8 Quirks
formatLength
option supports only short and full values