Відповіді:
Побачити:
Код:
var strDate = "03.09.1979";
var dateParts = strDate.split(".");
var date = new Date(dateParts[2], (dateParts[1] - 1), dateParts[0]);
"Note: parsing of date strings with the Date constructor (and Date.parse, they are equivalent) is strongly discouraged due to browser differences and inconsistencies."?
Якщо ви використовуєте інтерфейс jQuery, ви можете відформатувати будь-яку дату за допомогою:
<html>
<body>
Your date formated: <span id="date1"></span><br/>
</body>
</html>
var myDate = '30.11.2011';
var parsedDate = $.datepicker.parseDate('dd.mm.yy', myDate);
$('#date1').text($.datepicker.formatDate('M d, yy', parsedDate));
Ми використовуємо цей код, щоб перевірити, чи строка є дійсною датою
var dt = new Date(txtDate.value)
if (isNaN(dt))
посилання: http://momentjs.com/docs/#/parsing/string/
Якщо ви використовуєте moment.js, ви можете використовувати режим "рядок" + "формат"
moment(String, String);
moment(String, String, String);
moment(String, String, Boolean);
moment(String, String, String, Boolean);
напр .:
moment("12-25-1995", "MM-DD-YYYY");
У IE був використаний наступний код. (Сумісний з IE8)
var dString = "2013.2.4";
var myDate = new Date( dString.replace(/(\d+)\.(\d+)\.(\d+)/,"$2/$3/$1") );
alert( "my date:"+ myDate );
Розробники ASP.NET мають на вибір цей зручний вбудований (MS JS повинен бути включений на сторінку):
var date = Date.parseLocale('20-Mar-2012', 'dd-MMM-yyyy');
http://msdn.microsoft.com/en-us/library/bb397521%28v=vs.100%29.aspx
Використовувати об’єкт Date:
var time = Date.parse('02.02.1999');
document.writeln(time);
Дайте: 917902800000
new Date(Date.parse('02.02.1999'))
new Date(Date.parse('02.02.1999'))Javascript
new Date(Date.parse('02.02.1999'))- дасть однакові результати new Date('02.02.1999'), включаючи Недійсну дату в деяких браузерах. Використання вбудованого аналізатора - це, мабуть, найгірший спосіб розбору часової позначки.
Ця функція обробляє також недійсну дату 29.2.2001.
function parseDate(str) {
var dateParts = str.split(".");
if (dateParts.length != 3)
return null;
var year = dateParts[2];
var month = dateParts[1];
var day = dateParts[0];
if (isNaN(day) || isNaN(month) || isNaN(year))
return null;
var result = new Date(year, (month - 1), day);
if (result == null)
return null;
if (result.getDate() != day)
return null;
if (result.getMonth() != (month - 1))
return null;
if (result.getFullYear() != year)
return null;
return result;
}
Ви можете відформатувати дату, роблячи цей код. У javascript.
// for eg.
var inputdate=document.getElementById("getdate").value);
var datecomp= inputdate.split('.');
Var Date= new Date(datecomp[2], datecomp[1]-1, datecomp[0]);
//new date( Year,Month,Date)