1. ホーム
  2. javascript

[解決済み] JavaScriptで月の日数を求めるにはどうしたらよいでしょうか?

2022-08-20 19:03:37

質問

この関数を使っていますが、最も効率的で正確な取得方法を教えてください。

function daysInMonth(iMonth, iYear) {
   return 32 - new Date(iYear, iMonth, 32).getDate();
}

どのように解決するのですか?

function daysInMonth (month, year) { // Use 1 for January, 2 for February, etc.
  return new Date(year, month, 0).getDate();
}

console.log(daysInMonth(2, 1999)); // February in a non-leap year.
console.log(daysInMonth(2, 2000)); // February in a leap year.

0日目は前月の最終日です。月のコンストラクタは0ベースなので、これはうまく機能します。少しハックしていますが、基本的には32を引いていることになります。

もっと見る : 当月の日数