ページの最終更新日を表示してください。
ファイル名は js08.html としてください。
頻繁に更新するページなどの際に便利です。
表示方法は、自分の好きなようにカスタマイズが可能です。
: 省略
7: 現在の日時と最終更新日を表示します。<BR>
8 : <BR>
9: <SCRIPT LANGUAGE="JavaScript">
10: <!--
11: day = new Array("日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日");
12:
13: document.write("<BR>");
14:
15: last = new Date(document.lastModified);
16:
17: y = last.getYear();
18: t = last.getMonth() + 1;
19: d = last.getDate();
20: w = last.getDay();
21: h = last.getHours();
22: m = last.getMinutes();
23: s = last.getSeconds();
24:
25: document.write("最終更新日:<br>");
26: document.write(y,"年",t,"月",d,"日","(",day[w],")",h,"時",m,"分",s,"秒");
27: //-->
28: </SCRIPT>
: 省略
11行目:
day = new Array("日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日");
曜日を表現するために、day という名前の配列を準備しています。
配列は、複数の値をまとめて入れておくことができる変数のかたまりのようなものです。
この例では、日曜日〜土曜日までの7つの文字列を day という配列に代入しています。
代入した値を呼び出す場合、例えば3番目の値 "火曜日" を呼び出す場合は、 day[3] のように書きます。15行目:
last = new Date(document.lastModified);
document オブジェクトの lastModified オプションには、ページの最終更新日が格納されています。
この例では、最終更新日のデータを取得して変数 last に代入しています。17〜23行目:
変数 last に代入された最終更新日には、年月日 時分秒 のデータが全て入っています。
ここから、年月日 時分秒 のデータをそれぞれバラバラに取り出しています。
変数 last に getYear() getHours() などのメソッドを追加することで、年 や 時 などを取り出せます。18行目:
t = last.getMonth() + 1;
getMonth() メソッドは 月 を返しますが、0が1月 1が2月 … 11が12月のように、 0〜11の値として取り出されます。
値は1ずれていて、扱いにくいです。
そこで1を足すことで1〜12に修正して、月と一致させています。20行目:
w = last.getDay();
曜日は、getDay() メソッドを使うことで取り出せます。 0〜6の数値で取り出されます。
0 が 日曜日 1 が 月曜日 … 6が 土曜日 を表しています。
これは 配列 day に格納されている曜日の文字列と対応させてあるので、
配列 day を使って day[w] と書くと "日曜日" といった文字列が取り出せます。26行目:
document.write(y,"年",t,"月",d,"日","(",day[w],")",h,"時",m,"分",s,"秒");
ばらばらに取り出した年月日時分秒を結合して "xxxx年xx月xx日(x) xx時xx分xx秒" という形式で画面に表示しています。
表示方法は簡単に変更することができます。
余裕があれば試してみましょう。たとえば、
day = new Array("日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日");
を
day = new Array("Sun","Mon","Tue","Wed","Thu","Fri","Sat");
に修正すると、曜日の表現が英語になります。たとえば、
document.write(y,"年",t,"月",d,"日","(",day[w],")",h,"時",m,"分",s,"秒");
の部分で年月日時分秒を組み立てて画面に表示しているので
document.write(y,"/",t,"/",d," (",day[w],") ",h,":",m);
に修正すると、 2012/1/12 (Sun) 14:56 等に日付の書式を変えられます。