column

ITコラム

colmun_main7268

プログラミングノウハウ

2017.10.31

JavaScript【 Date 】1 ~ Dateオブジェクトで日付を取得

JavaScriptのDateオブジェクトを使うと、現在の日付や時刻を取得したり、特定の日付までの日数を計算したり、その他日付や時刻に関する色々な処理を行うことができます。
今回は、Dateオブジェクトの基本的な使用方法について紹介します。

なお、未経験からITエンジニアへの就職に興味がある方や未経験からプログラミングを効率よく学びたいと考えている方は、就職率98.3%で受講料無料のプログラミングスクールプログラマカレッジもおすすめです。

1. Dateオブジェクトとは

 
Dateオブジェクトは、日付や時刻を扱うためにJavaScriptで予め用意されているオブジェクトです。

Dateオブジェクトには、様々なメソッドが定義されており、これらを使用することで、時間の計算や日付の換算等をシンプルに行うことができます。
 
Dateオブジェクトは、次のように記述して作成します。

(1)new Date();

(2)new Date(value);

(3)new Date(dateString);

(4)new Date(year, month[, day[, hour[, minutes[, seconds[, milliseconds]]]]]);

(1)引数無しの場合は、現在日時( システムで設定された日時 ) の Date オブジェクトが生成されます。

(2)valueには、「 1 January 1970 00:00:00 UTC 」からのミリ秒数を表す整数値を指定します。

(3)dateStringには、日付を表す文字列を指定します。

(4)yearには、年を表す整数値を指定します。
 この場合、0 から 99 までの値は、1900 から 1999 の値にマッピングされますが、2000年問題等を回避するためにも、なるべく完全な年を指定します。

 monthには、月を表す整数値を指定します。
 この場合、月は 0 ~ 11 までの整数値で表されるため、1月は 0 を、12月は 11 を指定します。

 day、hour、minute、second、millisecond は、指定しなくても良い任意の引数です。
 dayは 日(1~31)を、hourは 時(0~23)を、minuteは 分(0~59)を、secondは 秒(0~59)を、millisecondは ミリ秒(0~999)を、それぞれ整数値で指定します。
 
 
実際に、Dateオブジェクトを使用する際は、次のように記述します。

let day1 = new Date();
let day2 = new Date("October 31, 2017 14:05:34");
let day3 = new Date("2017-10-31T14:05:34");
let day4 = new Date(2017, 9, 31);

上記の変数 day1 ~ day4 を出力すると、次のように表示されます。

(1)day1:
(2)day2:
(3)day3:
(4)day4:

このような形の値を、必要なフォーマットに変換して使用します。

▲目次へ戻る

2. システム日付を取得

 
Dateオブジェクトのメソッドを使用すると、基本データから、年や月、日、などを取得することができます。

「new Date();」でシステム日時の基本データを取得した後、色々な値を取得してみます。

• システム日時の基本データを取得
 let 変数名 = new Date();

• 4桁の西暦年を取得
 変数名.getFullYear();

• 月を取得( 1月が 0 ~ 12月が 11 となる )
 変数名.getMonth();

• 日にちを取得
 変数名.getDate();

• 曜日を取得( 日曜日が 0 ~ 土曜日が 6 となる )
 変数名.getDay();

• 時を取得
 変数名.getHours();

• 分を取得
 変数名.getMinutes();

• 秒を取得
 変数名.getSeconds();

 
基本データから取得した値は、例えば次のように使用します。

let today = new Date();

let str = "只今、"
    + today.getFullYear() + "年"
    + (today.getMonth() + 1) + "月"
    + today.getDate() + "日の"
    + today.getHours() + "時"
    + today.getMinutes() + "分"
    + today.getSeconds() + "秒です";

getMonthメソッドの返り値は、1月が 0 ~ 12月が 11 となるので、「 today.getMonth() + 1 」として月を取得します。

上記の変数 str を出力すると、次のように表示されます。

 
 
曜日を取得したい場合は、getDayメソッドを使用して、曜日に変換します。

let today = new Date();

let week = ["日", "月", "火", "水", "木", "金", "土"];

let str = "今日は、" + week[today.getDay()] + "曜日です";

getDayメソッドの返り値は、日曜日が 0 ~ 土曜日が 5 となるので、返り値がインデックス番号として利用できるような配列 [“日”, “月”, “火”, “水”, “木”, “金”, “土”] を定義します。

上記の変数 str を出力すると、次のように表示されます。

▲目次へ戻る

3. Dateオブジェクトのメソッド一覧

 
Dateオブジェクトには、次のようなメソッドが用意されています。

getDate 日にちを返す
getDay 曜日を返す(0~6、日曜~土曜)
getFullYear 4桁の西暦年を返す
getHours 現在の時間を返す
getMilliseconds ミリ秒(1000=1秒)を返す
getMinutes 分を返す
getMonth 月を返す(0~11、1月~12月)
getSeconds 秒を返す
getTime 1970年1月1日午前0時からの経過時間(秒数)を返す
getTimezoneOffset 世界協定時間との時差を返す
getUTCDate 世界協定時間の日にちを返す
getUTCDay 世界協定時間の曜日を返す(0~6、日曜~土曜)
getUTCFullYear 世界協定時間の4桁の西暦年を返す
getUTCHours 世界協定時間の現在の時間を返す
getUTCMilliseconds 世界協定時間のミリ秒(1000=1秒)を返す
getUTCMinutes 世界協定時間の分を返す
getUTCMonth 世界協定時間の月を返す(0~11、1月~12月)
getUTCSeconds 世界協定時間の秒を返す
getYear 年(西暦の下2桁)を返す
parse 1970年1月1日午前0時から指定した日付までの経過秒数を参照
setDate 日にちを設定する
setFullYear 4桁の西暦年を設定する
setHours 現在の時間を設定する
setMilliseconds ミリ秒(1000=1秒)を設定する
setMinutes 分を設定する
setMonth 月を設定する(0~11、1月~12月)
setSeconds 秒を設定する
setTime 1970年1月1日午前0時からの経過時間(秒数)を設定する
setUTCDate 世界協定時間の日にちを設定する
setUTCFullYear 世界協定時間の4桁の西暦年を設定する
setUTCHours 世界協定時間の現在の時間を設定する
setUTCMilliseconds 世界協定時間のミリ秒(1000=1秒)を設定する
setUTCMinutes 世界協定時間の分を設定する
setUTCMonth 世界協定時間の月を設定する(0~11、1月~12月)
setUTCSeconds 世界協定時間の秒を設定する
setYear 年(西暦の下2桁)を設定する
toGMTString グリニッジ(GMT)標準時間を文字列として返す
toLocalString ローカル(地域別)時間を文字列として返す
toUTCString 世界協定(UTC)時間を文字列として返す
UTC 1970年1月1日午前0時から指定した日付までの経過秒数を返す

▲目次へ戻る

無料説明会

SHARE

最新記事

無料説明会に参加してみる

INTERNOUS,inc. All rights reserved.

無料オンライン説明会へ