答えは、英語では月を数字ではなくJanuary, February, March ... などで表現するのが主流だから。
つまり以下のような使い方を想定しているわけである。
const monthNames = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]; const nowMonthIndex = (new Date()).getMonth(); console.log(monthNames[nowMonthIndex]);
ふざけるなと思うかもしれないが、(new Date()).getDay()で曜日を取得するとき同じ理由で日曜日=0で返ってくることには日本人も文句が無いので、ぐぬぬと思いながらも納得するしかない。