可能性の重複:
Zero-based month numberingなぜ、日付オブジェクトに変換するときに、JavaScriptの月から1を引くのですか?
私が読んでいる本の中で説明がまあ、私の叔母は皆のように1から彼女ヶ月のカウントを開始するので、我々は1を引く」と言います。ここで
は、入力された文字列の日付です:"died 27/04/2006: Black Leclère"
は、ここでは、コードです:
function extractDate(paragraph) {
function numberAt(start, length) {
return Number(paragraph.slice(start, start + length));
}
return new Date(numberAt(11, 4), numberAt(8, 2) - 1,
numberAt(5, 2));
}
alert(extractDate("died 27-04-2006: Black Leclère"));
04 - 1は03です。ただし、ここで出力日オブジェクトはThu Apr 27 2006 00:00:00
です。
出力に必要なものがわかっていても、言語の異常な動作とそれに続く-1の必要性については説明されていません。説明してください。
叔母は1人をカウントしますが、JavaScriptの叔父さんは0人からカウントします。https://developer.mozilla.org/ja/JavaScript/Reference/Global_Objects/Date – Yoshi
@Yoshiなぜ月を数えると0から始まるのですか?年を数えると1から始まる? –
@Fohsap:それだけです。 –