JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

JavaScriptで今月の初日と末日を取得する方法

JavaScriptで今月の最初の日(月初)と最後の日(月末)を取得するには、Dateオブジェクトの特性を利用します。以下のコードを実行して、動作を確認してみましょう。

<html>
   <head>
      <title>JavaScript Dates</title>
   </head>
   <body>
      <script>
         var date = new Date();
         document.write("現在の日付: " + date);
         var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
         document.write("<br>" + firstDay);
         var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0);
         document.write("<br>" + lastDay);
      </script>
   </body>
</html>

コードの解説

今月の初日を取得する

new Date(年, 月, 1)のように「日」に1を指定すると、その月の1日を表すDateオブジェクトが作成されます。なお、getMonth()が返す月の値は0から始まる(1月=0、12月=11)ため、そのまま引数に渡すだけで正しく機能します。

今月の末日を取得する

ポイントは「翌月の0日目」を指定することです。new Date(年, 月 + 1, 0)のように日付に0を渡すと、JavaScriptは自動的に前月の最終日へ繰り下げて解釈します。この仕組みにより、月ごとの日数の違い(28日・30日・31日)やうるう年の2月29日も意識せずに、常に正確な月末を取得できます。

実行結果の例

例として2024年5月15日に実行すると、出力は以下のようになります。

現在の日付: Wed May 15 2024 10:30:45 GMT+0900 (日本標準時)
Wed May 01 2024 00:00:00 GMT+0900 (日本標準時)
Fri May 31 2024 00:00:00 GMT+0900 (日本標準時)

このテクニックはシンプルながら非常に実用的で、カレンダー表示や請求期間の計算など、日付処理が必要なさまざまな場面で活用できます。より読みやすい形式で出力したい場合は、toLocaleDateString()toISOString()といったフォーマット系メソッドと組み合わせるとさらに便利です。

  1. MySQLで日付データから月の初日と末日を取得する方法

    MySQLでは、日付型のカラムから「その月の最初の日」と「最後の日」を簡単に求めることができます。この記事では、実際にテーブルを作成し、サンプルデータを使いながら具体的な手順を解説します。1. テーブルの作成まず、日付を格納するためのテーブルを作成します。mysql> create table DemoTable -> ( -> DueDate date -> ); Query OK, 0 rows affected (0.73 sec)2. レコードの挿入次に、INSERT文を使ってテーブルにいくつかのレコードを挿入します。mysql>

  2. Javaで現在の日付と時刻を取得する4つの方法をサンプルコード付きで解説

    Javaで現在の日付や時刻を取得する方法はいくつかあります。この記事では、代表的な4つの方法をサンプルコードと実行結果とともにわかりやすく解説します。 1. Dateクラスのコンストラクタを使用する java.util.Dateクラスの引数なしのコンストラクタは、現在の日付と時刻を表すDateオブジェクトを返します。最も古典的でシンプルな方法です。 サンプルコード import java.util.Date; public class CreateDate {    public static void main(String args[]) {   &nbs