Поведение синтаксического анализа даты в JavaScript зависит от реализации , формат ISO8601 был недавно добавлен в спецификацию ECMAScript 5-го издания, но это еще не поддерживается всеми реализациями.
Iрекомендовал бы проанализировать его вручную, например:
function parseDate(input) {
var parts = input.match(/(\d+)/g);
return new Date(parts[0], parts[1]-1, parts[2]);
}
parseDate('2011-01-03'); // Mon Jan 03 2011 00:00:00
По существу, вышеприведенная функция соответствует каждой части даты и использует конструктор Date, чтобы построить объект даты, обратите внимание, что months аргумент должен быть основан на 0 (0 = январь, 1 = февраль, ... 11 = декабрь) .