JavaScriptで日付をフォーマットして表示する方法
JavaScriptで日付を一定のフォーマットで表示する方法について説明します。
yyyy年mm月dd日(曜日)のフォーマットで日付を表示する
例えば、yyyy年mm月dd日(曜日)というフォーマットで現在の日付を表示する場合、次のようなプログラムになります。
var date = new Date(); // 現在日時を生成
var yyyy = date.getFullYear(); // 西暦を取得
var mm = date.getMonth() + 1; // 月を取得(返り値は実際の月-1なので、+1する)
var dd = date.getDate(); // 日を取得
var w = date.getDay(); // 曜日を取得(数値)
// 月と日が一桁の場合は先頭に0をつける
if (mm < 10) {
mm = "0" + mm;
}
if (dd < 10) {
dd = "0" + dd;
}
// 曜日を数値から文字列に変換するための配列
week = ["日", "月", "火", "水", "木", "金", "土"];
var result = yyyy + "年" + mm + "月" + dd + "日" + "(" + week[w] + ")"; // フォーマットを整えて表示
console.log(result);
Dateオブジェクトから現在日時を生成し、西暦、月、日、曜日をそれぞれ取得します。getMonth()は実際の月-1が返されるので、+1します。getDay()は日曜日が0、月曜日が1・・というように曜日に対応した0〜6の数値を返します。
月と日が一桁の場合は、if文を使って先頭に0を連結してフォーマットします。
曜日は数値で返されるので、配列を使って実際の曜日に変換します。最後に年、月、日、(曜日)を連結して表示しています。