Ответ 1
Учитывая результат, с которым вы застряли, я не могу придумать лучшего способа поймать DateTime
0 на стороне javascript.
Date.parse
должен работать для ваших потребностей синтаксического анализа, но он возвращает число миллисекунд, поэтому вам нужно обернуть вокруг него конструктор Date:
var date = new Date(Date.parse(myCSharpString));
Для даты возвращения вам просто нужно
date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + (date.getDate() + 1);
(date.getMonth
и date.getDate
являются 0-индексированными вместо 1-индексации.)
Fiddle: http://jsfiddle.net/GyC3t/
ИЗМЕНИТЬ
Благодаря захвату JoeB, позвольте мне сделать исправление. Функция date.getMonth()
имеет 0-индекс, но функция date.getDate()
1-индексирована. Сценарий "работал" с +1, потому что date.getMonth работает в локальное время, что до UTC. Я не правильно проверял документы и просто добавил 1, и он работал со скрипкой.
Более подходящий способ сделать это:
Для даты возврата вам просто нужно
date.getFullYear() + "/" + (date.getMonth() + 1) + "/" + (date.getUTCDate());
(date.getMonth
является 0-индексированным, а date.getDate
является 1-индексированным, но восприимчивым к различиям в часовых поясах.)
Fiddle: http://jsfiddle.net/GyC3t/25/