JQuery Date.parse возвращает NaN в браузере Chrome?
У меня есть senario, где я должен разбирать две даты, например, дату начала и дату окончания.
var startdate = '02/01/2011';
var enddate = '31/12/2011';
Но если мы предупреждаем дату начала
alert(Date.Parse(startdate)); i will get 1296498600000
но если я alert enddate
alert(Date.Parse(enddate)); i will get NaN
Но это работает в других браузерах, кроме Chrome, но в других браузерах
alert(Date.Parse(enddate)); i will get 1370889000000
Может кто-нибудь знает обходное решение для этого?
Ответы
Ответ 1
Если вы хотите разобрать дату без локальных различий, используйте вместо Date.parse()
:
следующее:
var enddate = '31/12/2011'; //DD/MM/YYYY
var split = enddate.split('/');
// Month is zero-indexed so subtract one from the month inside the constructor
var date = new Date(split[2], split[1] - 1, split[0]); //Y M D
var timestamp = date.getTime();
Смотрите также: Date
Ответ 2
Согласно this
DateString Строка, представляющая дату RFC822 или ISO 8601.
Я пробовал свой код, и я также получаю NaN
для даты окончания, но если я меняю дату и месяц, он отлично работает.