Data inválida para uma nova data ("AAAA-MM-DDThh: mm: ss"); instanciação
Estou trabalhando com titânio, que é uma estrutura para desenvolvimento móvel baseado em javascript.
Eu tenho uma matriz que contém entre suas células uma string que representa uma string 'date and time' no formato 'AAAA-MM-DD HH: mm: ss' (NightsArray [i] [3] retorna: 2014-02-20 23:00:00), como mostrado no console posteriormente.
nesta página são mostrados vários construtores para o objeto Date () com vários parâmetros:
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);
Então, como você pode ver, o construtor mais próximo da string da minha matriz é o 3º:
var birthday = new Date("1995-12-17T03:24:00");
No código a seguir, tentarei formatar minha string no formulário "AAAA-MM-DDThh: mm: ss" com alguns métodos substr () e passará a string resultante (após uma concatenação) para o construtor Date (), mas obtive 'Data inválida', como mostrado no log do console.
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);
Este é o log do console:
[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)
Eu tenho que comparar essa string para a data atual no final, mas agora eu primeiro tenho que converter essa string em uma data, mas gostaria de saber por que isso não funciona ..