プログラミングの際に、意外によく使うのが今日の日付と時間を取得する処理です。
画面上にリアルタイムで更新される現在時刻情報として表示したり、今日の日付によって処理を分岐したりする場合等です。
JavaScriptからも今日の日付と時刻を取得するための便利なメソッドが提供されていますのでご紹介しましょう。
今日の日付と曜日を取得する
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// 今日の日付情報を取得し変数dTodayに格納する var dToday = new Date(); // 取得した日付情報から年・月・日・曜日を取得する var year = dToday.getFullYear(); var month = dToday.getMonth()+1; var day = dToday.getDate(); var week = dToday.getDay(); // 曜日データを配列に格納する var yobi= new Array("日","月","火","水","木","金","土"); // 取得した日付情報を表示する document.write("今日の日付は" + year + "年" + month + "月" + day + "日 " + yobi[week] + "曜日"); |
上記のプログラムの実行結果は次のようになります。
1 |
今日の日付は2016年2月28日 日曜日 |
プログラムを1行目から解説すると、new Date()で今日の日付情報が取得できます。
ここでいう今日の日付とは、ローカルコンピュータ(JavaScriptを実行したパソコン等)のシステム日付になります。
また、日付情報dTodayから年、月、日、曜日を取得しています。注意が必要なのが月と曜日の情報です。
getMonth()で取得できる値は何番目の月かという情報です。この情報が0から始まっているため実際の月より1少ない数が返却されます。そこで1を足す処理が必要になります。
曜日の情報は、日曜日から何番目の曜日かを数字で知らせてくれます。そのため何番目が何曜日に当たるかを対応付けるため、事前に曜日の並びを配列に格納し、そこから実際の曜日を取得しています。
現在時刻を取得する
1 2 3 4 5 6 7 8 9 10 |
// 今日の日付情報を取得し変数dTodayに格納する var dToday = new Date(); // 時・分・秒を取得する var hour = dToday.getHours(); var minute = dToday.getMinutes(); var second = dToday.getSeconds(); // 現在時刻を表示する document.write("現在時刻は" + hour + "時", + minute + "分" + second + "秒"); |
上記プログラムの実行結果は次のようになります。
1 |
現在時刻は17時16分26秒 |
現在時刻も日付情報と同じようにnew Date()で取得した日付情報から取得していきます。
時、分、秒とそれぞれ取得するメソッドが提供されていますので、これを使って別々に取得し、最後に連結して表示しています。
時と曜日を取得する際に注意が必要なことを覚えておけば、後はJavaScriptのメソッドにまかせておけば簡単に日付情報と現在時刻を取得することができます。