Возьмите следующий код
var d = new Date(); d.setFullYear(0); alert(d);
Какой год является годом 0000?В конце концов, год 0 на самом деле не вещь, так как мы перешли с 1BC до 1AD.Год 0 фактически 1BC, а год -1 фактически 2BC?
Спецификация ES262 гласит:
20.3.1.3 Номер года В ECMAScript используется грипорианский календарь с прогонкой, чтобы отобразить номер дня в номер года иопределить месяц и дату в этом году.
20.3.1.3 Номер года
В ECMAScript используется грипорианский календарь с прогонкой, чтобы отобразить номер дня в номер года иопределить месяц и дату в этом году.
Если вы посмотрите в 101 Википедии Григорианский календарь с пролепсией *, вы найдете:
Для этих календарей можно выделить две системы нумерации летДО НАШЕЙ ЭРЫ.Беде и более поздние историки не использовали латинский ноль, nulla, как год (см. Ноль года), поэтому год, предшествующий 1 году нашей эры, равен 1 году до нашей эры.В этой системе год 1 до н.э. является високосным годом (аналогично в пролептическом юлианском календаре).С математической точки зрения удобнее включать год 0 и представлять более ранние годы как отрицательные, для конкретной цели облегчения расчета количества лет между отрицательным (BC) и положительным (AD) годами.
Поэтому, согласно вашей интерпретации, существует год 0 или нет.