Что такое год 0 в Javascript? - PullRequest
0 голосов
/ 03 марта 2019

Возьмите следующий код

var d = new Date();
d.setFullYear(0);
alert(d);

Какой год является годом 0000?В конце концов, год 0 на самом деле не вещь, так как мы перешли с 1BC до 1AD.Год 0 фактически 1BC, а год -1 фактически 2BC?

1 Ответ

0 голосов
/ 03 марта 2019

Спецификация ES262 гласит:

20.3.1.3 Номер года

В ECMAScript используется грипорианский календарь с прогонкой, чтобы отобразить номер дня в номер года иопределить месяц и дату в этом году.

Если вы посмотрите в 101 Википедии Григорианский календарь с пролепсией *, вы найдете:

Для этих календарей можно выделить две системы нумерации летДО НАШЕЙ ЭРЫ.Беде и более поздние историки не использовали латинский ноль, nulla, как год (см. Ноль года), поэтому год, предшествующий 1 году нашей эры, равен 1 году до нашей эры.В этой системе год 1 до н.э. является високосным годом (аналогично в пролептическом юлианском календаре).С математической точки зрения удобнее включать год 0 и представлять более ранние годы как отрицательные, для конкретной цели облегчения расчета количества лет между отрицательным (BC) и положительным (AD) годами.

Поэтому, согласно вашей интерпретации, существует год 0 или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...