【JavaScript】日付の求め方

Dateオブジェクト

日付や時刻を扱うには、Dateオブジェクトを使います。
引数を使わない場合、現在の日付と時刻のDateオブジェクトを作成します。

//引数の指定なし
now = new Date();
/*結果表示
 *Sun Oct 03 2010 06:55:38 GMT+0900
*/

//引数にクリスマスを指定
now new Date(2010,12,24,0,0,0);
/*結果表示
 *Mon Jan 24 2011 00:00:00 GMT+0900
*/

現在の日付と時刻を取得する

現在の日付と時刻を取得するには、次のメソッドを使います。

メソッド 働き
getFullYear() 西暦年を取得します
getMonth() 月を1小さい数で取得します
getDate() 日を取得します
getDay() 日曜日を0とし、0から6までの数値で曜日を取得します
getHours() 時間を取得します
getMinutes() 分を取得します
getSeconds() 秒を取得します
getTime() 1970年1月1日午前0時からのミリ秒単位を取得します


<例題1>Dateオブジェクトを使って現在の日時を求めてみます。

//現在の日付と時刻
now = new Date();

//年の表示
FY = now.getFullYear();

//月の表示
M = now.getMonth() + 1;

//日付の表示
Dt = now.getDate();

//曜日の表示
var day = ["日","月","火","水","木","金","土"]
Dy = day[now.getDay()];
<h2>日付の表示</h2>
<script type="text/javascript">
document.write("<h3>" + now + "</h3>");
document.write("<h3>" + FY + "年" + M + "月" + Dt + "日" + "(" + Dy + ")");


<例題2>クリスマスまであと何日かを求めてみます。

//現在の日付と時刻
now = new Date();

//クリスマスの日付
day = new Date(2010,12,24,0,0,0);

//クリスマス - 現在の日時(ミリ秒の差を求めます)
time = day.getTime() - now.getTime();

//ミリ秒単位から日単位を計算します
days = Math.ceil(time/(24*60*60*1000));
<h2>クリスマスまであと何日</h2>
<script type="text/javascript">
document.write(days + "日");
</script>