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

JavaScriptのDate.setMonth()関数の使い方をサンプルコード付きで解説

Dateオブジェクトは、JavaScript言語に組み込まれたデータ型のひとつです。Dateオブジェクトは、new Date() を使って次のように生成します。

Dateオブジェクトを一度作成すれば、多数の組み込みメソッドを使って操作できるようになります。これらのメソッドの多くは、ローカル時間またはUTC(協定世界時/GMT)を基準として、年・月・日・時・分・秒・ミリ秒といった各フィールドの値を取得・設定するためのものです。

Dateオブジェクトの setMonth() 関数は、月を表す整数を受け取り、現在の日付に含まれる「月」の値をその整数で上書きします。

構文

構文は以下のとおりです。

dateObj.setMonth(monthValue);

引数には月を表す整数を指定します。月の値は0始まりである点に注意してください(0=1月、1=2月、…、11=12月)。また、必要に応じて第2引数で「日」を指定することも可能です。戻り値は、1970年1月1日00:00:00 UTCから見た変更後の日時までの経過ミリ秒数です。

使用例1:既存の日付の月を変更する

<html>
<head>
   <title>JavaScript Example</title>
</head>
<body>
   <script type="text/javascript">
      var dateObj = new Date('September 26, 89 5:4:25:96');
      document.write("Current date: "+dateObj.toUTCString());
      document.write("<br>");
      dateObj.setMonth(9);
      document.write("Date after setting the month: "+dateObj.toUTCString());
   </script>
</body>
</html>

出力結果

Current date: Mon, 25 Sep 1989 23:34:25 GMT
Date after setting the month: Wed, 25 Oct 1989 23:34:25 GMT

この例では、1989年9月26日のDateオブジェクトに対して setMonth(9) を実行しています。月が10月に置き換えられ、結果は「Wed, 25 Oct 1989」と表示されました。

使用例2:月を指定せずに生成した日付への設定

Dateオブジェクトの生成時に月を指定していなくても、あとから setMonth() 関数を使って月を設定できます。

<html>
<head>
   <title>JavaScript Example</title>
</head>
<body>
   <script type="text/javascript">
      var dateObj = new Date('1989 5:4:25:96');
      dateObj.setMonth(8);
      document.write(dateObj.toString());
   </script>
</body>
</html>

出力結果

Fri Sep 01 1989 05:04:25 GMT+0530 (India Standard Time)

コンストラクタに年と時刻しか渡していなくても、setMonth(8) を呼び出すことで月だけが9月に設定されました。

使用例3:現在の日時に対する設定

同じように、コンストラクタに何も値を渡さずにDateオブジェクトを生成した場合でも、setMonth() 関数で月を設定できます。このとき、日・年その他の値は現在の日付(時刻)のまま維持されます。

<html>
<head>
   <title>JavaScript Example</title>
</head>
<body>
   <script type="text/javascript">
      var dateObj = new Date();
      dateObj.setMonth(8);
      document.write(dateObj.toString());
   </script>
</body>
</html>

出力結果

Tue Sep 18 2018 22:13:48 GMT+0530 (India Standard Time)

実行時点の日付が2018年9月18日であったため、setMonth(8) を呼び出しても結果に変化はありません。実行する月が異なる場合は、月の部分だけが9月に置き換えられます。

  1. JavaScriptのDate.setUTCMonth()メソッドとは?構文と使い方を実例付きで解説

    Dateオブジェクトは、JavaScriptに組み込まれているデータ型の一つです。Dateオブジェクトは、次のように new Date() を使って生成します。 Dateオブジェクトを生成すると、多数のメソッドを使ってそのオブジェクトを操作できます。ほとんどのメソッドは、ローカル時間またはUTC(協定世界時/GMT)のいずれかの時刻基準で、年・月・日・時・分・秒・ミリ秒の各フィールドを取得・設定するためのものです。 setUTCMonth()メソッドは、年の月を表す整数を受け取り、UTC(協定世界時)に基づいて現在の日付の「月」の値を置き換えます。月の値は0が1月を表し、以降は11が12月に

  2. JavaScriptのDate.@@toPrimitive()関数とは?日付オブジェクトをプリミティブ値に変換する方法

    JavaScriptのDate.@@toPrimitive()関数は、Dateオブジェクトをプリミティブ値に変換するために使用されます。このメソッドはSymbol.toPrimitiveプロパティを通じて呼び出され、引数に指定したヒント(hint)に応じて、文字列や数値など適切なプリミティブ値を返します。 ヒントの種類と戻り値 「default」:日付を表す文字列が返されます。 「number」:1970年1月1日00:00:00 UTCからの経過ミリ秒数(タイムスタンプ)が数値で返されます。 「string」:「default」と同様に、日付を表す文字列が返されます。 サンプルコード 以