icon
icon

JavaScriptで指定した日付の曜日を取得する方法を現役エンジニアが解説【初心者向け】

初心者向けにJavaScriptで指定した日付の曜日を取得する方法について解説しています。この操作には、DateオブジェクトのgetDay()メソッドを使います。実行する処理の流れを確認し、書き方を覚えましょう。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

JavaScriptで指定した日付の曜日を取得する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそもJavaScriptについてよく分からないという方は、JavaScriptとは何なのかについて解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプJavaScript/jQuery講座の内容をもとにしています。

 

田島悠介

今回は、JavaScriptに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

指定した日付の曜日を取得する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

Dateオブジェクトとは

Javascriptが標準で実装している組み込みオブジェクトです。Dateオブジェクトを使うことで、Javascriptで日付や時刻を取得することができます。

例えば、以下のコードで現在日付と時刻の情報を得ることができます。

プログラム

var date = new Date();
console.log( date );

実行結果

Mon Jan 10 2020 21:32:10 GMT+0900 (日本標準時)

 

getDayメソッドとは

先ほど表示した日付情報では、余計な情報が含まれており実用的ではありません。では、日付だけ取得したい場合はどうすればよいのでしょうか。Dateオブジェクトには様々なメソッドが実装されていますから、日付だけを取得するためのメソッドである getDay()メソッドを使うことで目的の情報が得られます。

 

[PR] フロントエンドで副業する学習方法を動画で公開中

getDayメソッドの使い方

以下のように、Dateオブジェクトをインスタンス化して格納した変数から、getDay()メソッドを呼び出して使います。

プログラム

var date = new Date();
console.log( date.getDate() );

実行結果

10

このように、getDay()メソッドを使うことで、「何日か」という情報だけ取得することができました。

 

指定した日付の曜日を取得する方法

Dateオブジェクトのメソッドを使いこなすことで、「指定した日付の曜日情報だけ取得する」といったことも可能になります。曜日だけ取得するには、次の手順でプログラムを作成します。

  1. Dateオブジェクトのインスタンス生成時に、何月何日か指定する
  2. 生成したインスタンスから、曜日情報を取得する
  3. 曜日情報は数値で出力されるため、日本語の日~土曜日の文字列に変換する

 

コラム

コスパとタイパ、両方結果的に良くなる良くなる学び方とは?

「スクールは高いし時間も縛られて効率が悪い」と考える方は多いと思います。
もちろん、時間も費用もかかることは間違いありません。
ただ 結果的に無駄な学びにお金も時間もかける方がリスクが高いという考えもあります。

コスパ・タイパ最適化の参考として、 テックアカデミー卒業生がスクールを選んだ理由 をご紹介します。

  • ・困ったときに、質問や相談できる相手がいるため挫折しなかった
  • ・プロとして必要なスキルのみを深く学べたので無駄がなかった
  • ・副業案件の提供と納品までのサポートがあったので目的を達成できた

安価・短期間で広く浅く学んでも意味がありません。 本当に自分の目的が達成できるか、それが重要です。
自分にどのスキルや学び方が合っているか、どんな学習方法かなど、お気軽に 無料相談 に参加してみませんか?

カウンセラー・現役のプロへ、何でも気軽に無料相談可能。 30分か60分お好きな時間が選べて、かつ3回まで すべて無料で ご利用できます。
無理な勧誘は一切ない ので、お気軽にご参加ください。

今なら相談した方限定の割引・参加特典付き! 無料相談はこちら

実際に書いてみよう

コード

// 今回指定する年月日情報(2020年10月1日)
var yearStr = 2020 ;
var monthStr = 10 ;
var dayStr = 1;
// Dateオブジェクトには実際の月ー1の値を指定するため
var jsMonth = monthStr - 1 ;
// Dateオブジェクトは曜日情報を0から6の数値で保持しているため、翻訳する
var dayOfWeekStrJP = [ "日", "月", "火", "水", "木", "金", "土" ] ;
// 指定日付で初期化したDateオブジェクトのインスタンスを生成する
var date = new Date( yearStr, jsMonth , dayStr );
// 木曜日は数値の4として保持されているため、dayOfWeekStrJP[4]の値が出力される
console.log(dayOfWeekStrJP[date.getDay()] + '曜日');

実行結果

木曜日

 

まとめ

Dateオブジェクトは便利なメソッドを複数実装していますが、月と曜日の情報を0から始まる数値で持っているため、扱いに注意が必要です。

今回紹介したプログラムのように日付情報を計算・取得して間違えないように気を付けてプログラミングをしましょう。

 

1時間でできる無料体験!

監修してくれたメンター

寺谷文宏

WEBアプリケーションエンジニアとして数多くのプロジェクトを経験し、フロントエンドからサーバーサイドまで総合的な開発を得意としています。

TechAchademyではフロントエンド、Javaコースを担当。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

TechAcademyでは、初心者でもJavaScript・jQueryを使ったWebサービス公開を習得できるオンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する