JavaScriptで日付を一定のフォーマットで表示する方法について説明します。
yyyy年mm月dd日(曜日)のフォーマットで日付を表示する
例えば、yyyy年mm月dd日(曜日)というフォーマットで現在の日付を表示する場合、次のようなプログラムになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
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を連結してフォーマットします。
曜日は数値で返されるので、配列を使って実際の曜日に変換します。最後に年、月、日、(曜日)を連結して表示しています。