LoginSignup
0
0

More than 1 year has passed since last update.

【JavaScript】Dateオブジェクトの使い方

Last updated at Posted at 2021-08-02

はじめに

アウトプットが苦手な自分が練習の一環として記事を書いてみる。

第二回目です。

以前Dateオブジェクトを使った日付の加算で少し躓いたところがあったので、
それについて記事を書こうと思ったのですが、
その前にまずはDateオブジェクトの簡単な使い方について書いていきたいと思います。

現在の日時を取得する

new Date()を使用することでDateオブジェクトを生成します。
引数を指定しない場合、現在の日時でオブジェクトが生成されます。

現在日時を取得
const date = new Date();

console.log(date);
// 実行結果
// 2021-08-02T03:46:44.601Z

任意の日時を取得する

先ほどのnew Date()に引数を指定して生成します。
指定の仕方は以下の3種類あります。

  • 年月日時分秒ミリ秒
  • 文字列
  • 1970年1月1日(UTC)からの経過ミリ秒数
任意の日時を取得
// 年月日時分で指定
const date1 = new Date(2021,7,1,10,00,5,300);

// 文字列で指定
const date2 = new Date('2021-08-01 12:30');

// ミリ秒で指定
const date3 = new Date(1627797600000);

console.log(date1);
console.log(date2);
console.log(date3);
// 実行結果
// 2021-08-01T10:00:05.300Z
// 2021-08-01T12:30:00.000Z
// 2021-08-01T06:00:00.000Z

※月を指定する場合、値は0から始まるので注意が必要です。(1月を指定する場合、値は「0」となる)

日時の値ををそれぞれ取得する

Dateオブジェクトにはオブジェクトが持つ日時の値をそれぞれ取得するメソッドがあります。

メソッド 返値
getFullYear() 年の値
getMonth() 月の値
getDate() 日の値
getDay() 曜日の値
getHours() 時の値
getMinutes() 分の値
getSeconds() 秒の値
getMilliseconds() ミリ秒の値
日時をそれぞれ取得
const date = new Date(2021,7,1,10,20,5,300);

console.log('getFullYear:' + date.getFullYear()); // 年の値を取得
console.log('getMonth:' + date.getMonth()); // 月の値を取得
console.log('getDate:' + date.getDate()); // 日の値を取得
console.log('getDay:' + date.getDay()); // 曜日の値を取得
console.log('getHours:' + date.getHours()); // 時の値を取得
console.log('getMinutes:' + date.getMinutes()); // 分の値を取得
console.log('getSeconds:' + date.getSeconds()); // 秒の値を取得
console.log('getMilliseconds:' + date.getMilliseconds()); // ミリ秒の値を取得
// 実行結果
//getFullYear:2021
//getMonth:7
//getDate:1
//getDay:0
//getHours:10
//getMinutes:20
//getSeconds:5
//getMilliseconds:300

※曜日の値も月と同様に値が0から始まります。(日曜日の場合は「0」となる)

日時の再設定

先ほどはオブジェクトの値を取得しましたが、オブジェクトの値を再設定するメソッドもそれぞれ用意されてます。

メソッド 引数
setFullYear() 「年」を表す整数の値
setMonth() 「月」を表す整数の値
setDate() 「日」を表す整数の値
setHours() 0から23までの間の整数値
setMinutes() 0から59までの間の整数値
setSeconds() 0から59までの間の整数値
setMilliseconds() 0から999までの間の整数値
日時の再設定
const date = new Date(2021,7,1,10,20,5,300);

date.setFullYear(2020);
date.setMonth(9);
date.setDate(20);
date.setHours(11);
date.setMinutes(22);
date.setSeconds(33);
date.setMilliseconds(44);

console.log(date);
// 実行結果
// 2020-10-20T11:22:33.044Z

まとめ

Dateオブジェクトの使い方については以上です。

月と曜日の値が0から始まることに注意すれば簡単な日付の取得と設定はできると思いますので、
参考にしていただければ幸いです。

参考サイト
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Date

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0