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

JavaScriptのDate.getDay()メソッドとは?曜日を数値で取得する使い方を徹底解説

JavaScriptのDateオブジェクトは、言語に標準で組み込まれているデータ型の一つです。Dateオブジェクトは、new Date() を使って以下のように生成します。

Dateオブジェクトを作成すると、多数のメソッドを使ってその内容を操作できます。ほとんどのメソッドは、ローカル時刻またはUTC(協定世界時/GMT)のいずれかの時刻に基づいて、年・月・日・時・分・秒・ミリ秒といった各フィールドを取得・設定するためのものです。

getDay() メソッドは、そのDateオブジェクトが保持している日付の「曜日」を表す数値を返します。戻り値は 0(日曜日)から6(土曜日) までの整数で、例えば「0」なら日曜日、「2」なら火曜日を意味します。

構文

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

dateObj.getDay();

戻り値

  • 0:日曜日
  • 1:月曜日
  • 2:火曜日
  • 3:水曜日
  • 4:木曜日
  • 5:金曜日
  • 6:土曜日

使用例①:特定の日付の曜日を取得する

次の例では、1989年9月26日の曜日を取得しています。この日は火曜日だったため、「2」が出力されます。

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var dateObj = new Date('September 26, 1989 00:04:00');
        document.write(dateObj.getDay());
    </script>
</body>
</html>

出力結果

2

使用例②:日(何日)を省略した場合

Dateコンストラクタに「年月」と「時刻」だけを指定して「日(日にち)」を省略した場合、デフォルトで「1日」が指定されたものとして扱われます。

たとえば「September 1989」とだけ指定した場合、1989年9月1日の曜日が返されます。この日は金曜日であり、金曜日は週の5番目にあたるため、この関数は「5」を返します。

<html>
<head>
    <title>JavaScript Example</title>
</head>
<body>
    <script type="text/javascript">
        var dateObj = new Date('September, 1989 00:04:00');
        document.write(dateObj.getDay());
    </script>
</body>
</html>

出力結果

5

使用例③:引数なしで現在の曜日を取得する

Dateコンストラクタに引数を渡さずにオブジェクトを生成すると、実行時点の「今日の日付」が設定されます。その状態で getDay() を呼び出すと、本日の曜日に対応する数値が返されます。

なお、出力される値はコードを実行した曜日によって変わります。たとえば水曜日に実行すれば「3」が出力されます。

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

出力結果(実行日により変化)

0〜6 のいずれかの数値

注意点:getDay() と getDate() の違い

getDay() と名前がよく似たメソッドに getDate() がありますが、両者はまったく別の値を返すので注意が必要です。

  • getDay() … 曜日を表す数値(0〜6)を返す
  • getDate() … 月の中での「日にち」(1〜31)を返す

また、getDay() の戻り値はローカルタイムゾーンに基づいて計算されます。UTC基準で曜日を取得したい場合は、getUTCDay() を使用してください。

  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」と同様に、日付を表す文字列が返されます。 サンプルコード 以