Неверная дата для новой даты («ГГГГ-ММ-ДДчч: мм: сс»); при создании экземпляра
Я работаю с титаном, который является основой для разработки мобильных приложений на основе JavaScript.
У меня есть массив, который содержит среди своих ячеек строку, представляющую строку «дата и время» в формате «ГГГГ-ММ-ДД ЧЧ: мм: сс» (NightsArray [i] [3] возвращает: 2014-02-20 23:00:00), как показано в консоли позже.
на этой странице показано несколько конструкторов для объекта Date () с несколькими параметрами:
var today = new Date();
var birthday = new Date("December 17, 1995 03:24:00");
var birthday = new Date("1995-12-17T03:24:00");
var birthday = new Date(1995,11,17);
var birthday = new Date(1995,11,17,3,24,0);
Итак, как вы можете видеть, ближайший конструктор для строки моего массива - 3-й:
var birthday = new Date("1995-12-17T03:24:00");
В следующем коде я попытаюсь отформатировать мою строку в форме «YYYY-MM-DDThh: mm: ss» с некоторыми методами substr () и передать полученную строку (после конкатенации) в конструктор Date (), но я получил «Недопустимая дата», как показано в журнале консоли.
Ti.API.error("+*///+++NIGHT DATE & TIME(string) : "+NightsArray[i][3]);
Ti.API.error("+*///+++NIGHT DATE & TIME(string)substr(0,10) : "+NightsArray[i][3].substr(0,10));
Ti.API.error("+*///+++NIGHT DATE & TIME(string)substr(11,10) : "+NightsArray[i][3].substr(11,10));
Ti.API.error("+*///+++"+NightsArray[i][3].substr(0,10)+"T"+NightsArray[i][3].substr(11,10));
var nightDateNTime = new Date(NightsArray[i][3].substr(0,10)+"T"+NightsArray[i][3].substr(11,10));
Ti.API.error("+*///+++ CURRENT DATE nightDateNTime(Date): "+nightDateNTime);
var d = new Date();
Ti.API.error("+*///+++ CURRENT DATE : "+d);
Это консольный журнал:
[ERROR] :+*///+++NIGHT DATE & TIME(string) : 2014-02-19 23:00:00
[ERROR] : +*///+++NIGHT DATE & TIME(string)substr(0,10) : 2014-02-19
[ERROR] : +*///+++NIGHT DATE & TIME(string)substr(11,10) : 23:00:00
[ERROR] : +*///+++2014-02-19T23:00:00
[ERROR] : +*///+++ CURRENT DATE nightDateNTime(Date): Invalid Date
[ERROR] : +*///+++ CURRENT DATE : Mon Feb 17 2014 11:09:09 GMT+0100 (CET)
Я должен сравнить эту строку с текущей датой в конце, но теперь мне сначала нужно преобразовать эту строку в дату, но мне интересно, почему это не работает ..