Dateオブジェクトを、利用する際に、年・月・日、曜日、時・分・秒を個別に取得したいケースもあります。
今回はその方法について解説していきます。
デモ
Result上が、取得したDateオブジェクトをそのまま表示したもの。
Result下が、Dateオブジェクトから個別にデータ取得して表示したものです。
See the Pen Untitled by masahiro nomura (@masahiroview) on CodePen.
コード解説
基本的な取得方法
Dateオブジェクトに対して、既定の関数を割り当てるだけで簡単に取得することが可能です。
以下が実際のコードです。
//Dateオブジェクト
const now = new Date();
//年
const year = now.getFullYear();
//月
const month = now.getMonth()+1;
//日付
const date = now.getDate();
//曜日
const day = now.getDay();
//時間
const hour = now.getHours();
//分
const minute = now.getMinutes();
//秒
const second = now.getSeconds();
注意点
以下の値はそのまま利用すると混乱することがあるので気をつけましょう。
月:getMonth()
0~11の数値で表現されるので、実際の月と1ずれます。
(例)0:1月、1:2月 ・・・
わかりやすくするために+1して利用しましょう。
曜日:getDay()
0~6の数値で表現されるので、そのままだとわかりにくいです。
(例)0:月曜日、1:火曜日 ・・・
対応する配列を利用することで、日本語の曜日に変換することが可能です。
//Dateオブジェクト
const now = new Date();
//曜日を取得
const day = now.getDay();
//dayの値に対応する配列
const dayArray = [ "日", "月", "火", "水", "木", "金", "土"];
//配列からdayの値と対応する曜日を取得。
strDay = dayArray[day];
//結果「日〜土」のいずれか。
console.log(strDay);
参考
mdn web docs :Date
コメント