Visit Mozilla.org

Core JavaScript 1.5 Reference:Global Objects:Date

出典: MDC


目次

[編集] 概要

日付と時刻を扱うことができる Date インスタンスを生成します。

[編集] 構文

new Date()
new Date(milliseconds)
new Date(dateString)
new Date(year, month, date [, hour, minute, second, millisecond ])

[編集] 引数

milliseconds 
1970 年 1 月 1 日 00:00:00 (UTC) からのミリ秒数を表す整数値。
dateString 
日時を表す文字列。この文字列は parse メソッドで認識される書式である必要があります。
year
年を表す整数値。互換性のために(Y2K 問題 を避けるために)、常に完全な形で指定すべきです。例えば、 98 ではなく、1998 を使ってください。
month
1 月を意味する 0 から 12 月を意味する 11 までの、月を表す整数値。
date
日付を表す整数値。
hour
時(24 時間単位)を表す整数値。
minute
時刻の分の部分を表す整数値。
second
時刻の秒の部分を表す整数値。
millisecond
時刻のミリ秒の部分を表す整数値。

[編集] 説明

引数を何も与えなかった場合、コンストラクタは地方時に基づく今日の日時の Date オブジェクトを生成します。引数を一部だけ与えた場合、与えなかった引数は 0 にセットされます。引数を与える場合、少なくとも年、月、日は与える必要があります。時、分、秒、ミリ秒は省略することができます。

日時は 1970 年 1 月 1 日 (UTC) の真夜中からのミリ秒数で計測されます。1 日は 86,400,000 ミリ秒です。Date オブジェクトの範囲は 1970 年 1 月 1 日 (UTC) から計測して -100,000,000 日から 100,000,000 日までです。

Date オブジェクトはプラットフォームを越えた一様な振る舞いを提供します。

Date オブジェクトは地方時のメソッドと同様に、UTC (世界時) のメソッドを多くサポートしています。グリニッジ標準時 (GMT) としても知られる UTC は、世界共通の標準時によって設定される時刻です。地方時はコンピュータの把握する JavaScript が実行される場所での時刻です。

Date をノンコンストラクタコンテキスト(すなわち、new 演算子無し)で実行した場合、現在時刻を表す文字列を返します。

[編集] プロパティ

Date インスタンスから継承されているプロパティについては、Date インスタンスの プロパティ を参照してください

prototype
Date オブジェクトにプロパティを追加することができます。

Function.prototype から継承されるプロパティ
caller, constructor, length, name

[編集] メソッド

Date インスタンスから継承されているメソッドについては、Date インスタンスの メソッド を参照してください

now
現在日時に対応する数値を返します。
parse
日時を表す文字列を解析し、地方時の 1970 年 1 月 1 日 00:00:00 からのミリ秒数を返します。
UTC
コンストラクタの最も長い書式と同じ引数を受け付け、世界時の 1970 年 1 月 1 日 00:00:00 からのミリ秒数を返します。

Function.prototype から継承されるメソッド
apply, call, toSource, toString, valueOf

Object.prototype から継承されるメソッド
__defineGetter__, __defineSetter__, hasOwnProperty, isPrototypeOf, __lookupGetter__, __lookupSetter__, __noSuchMethod__, propertyIsEnumerable, unwatch, watch

[編集] Date インスタンス

Date インスタンスは、Date.prototype を継承しています。コンストラタのプロトタイプを変更することで、Date インスタンスによって継承されたプロパティとメソッドに影響を与えることができます。

いわゆる 2000 年問題との互換性のために、年を常に完全な形で指定するべきです。例えば、98 ではなく、1998 を使ってください。完全な形で年を指定することを支援するために、JavaScript には、getFullYearsetFullYeargetUTCFullYear、そして、setUTCFullYear メソッドがあります。

[編集] プロパティ

constructor
インスタンスを生成した関数を返します。これはデフォルトでは Date コンストラクタです。

[編集] メソッド

getDate
地方時に基づき、指定された日時の「日」を返します。
getDay
地方時に基づき、指定された日時の「曜日」を返します。
getFullYear
地方時に基づき、指定された日時の「年」を返します。
getHours
地方時に基づき、指定された日時の「時」を返します。
getMilliseconds
地方時に基づき、指定された日時の「ミリ秒」を返します。
getMinutes
地方時に基づき、指定された日時の「分」を返します。
getMonth
地方時に基づき、指定された日時の「月」を返します。
getSeconds
地方時に基づき、指定された日時の「秒」を返します。
getTime
指定された日時を協定世界時(UTC) の 1970 年 1 月 1 日 00:00:00 からのミリ秒単位の数値で返します。
getTimezoneOffset
現地の時間帯のオフセットを分で返します。
getUTCDate
世界時に基づき、指定された日時の「日」を返します。
getUTCDay
世界時に基づき、指定された日時の「曜日」を返します。
getUTCFullYear
世界時に基づき、指定された日時の「年」を返します。
getUTCHours
世界時に基づき、指定された日時の「時」を返します。
getUTCMilliseconds
世界時に基づき、指定された日時の「ミリ秒」を返します。
getUTCMinutes
世界時に基づき、指定された日時の「分」を返します。
getUTCMonth
世界時に基づき、指定された日時の「月」を返します。
getUTCSeconds
世界時に基づき、指定された日時の「秒」を返します。
getYear
非推奨
地方時に基づき、指定された日時の「年」を返します。代わりに getFullYear を使うこと。
setDate
地方時に基づき、指定された日時の「日」を設定します。
setFullYear
地方時に基づき、指定された日時の「年」を完全な形で設定します。
setHours
地方時に基づき、指定された日時の「時」を設定します。
setMilliseconds
地方時に基づき、指定された日時の「ミリ秒」を設定します。
setMinutes
地方時に基づき、指定された日時の「分」を設定します。
setMonth
地方時に基づき、指定された日時の「月」を設定します。
setSeconds
地方時に基づき、指定された日時の「秒」を設定します。
setTime
協定世界時(UTC) の 1970 年 1 月 1 日 00:00:00 からのミリ秒単位の数で表された時刻に Date オブジェクトを設定します。
setUTCDate
世界時に基づき、指定された日時の「日」を設定します。
setUTCFullYear
世界時に基づき、指定された日時の「年」を完全な形で設定します。
setUTCHours
世界時に基づき、指定された日時の「時」を設定します。
setUTCMilliseconds
世界時に基づき、指定された日時の「ミリ秒」を設定します。
setUTCMinutes
世界時に基づき、指定された日時の「分」を設定します。
setUTCMonth
世界時に基づき、指定された日時の「月」を設定します。
setUTCSeconds
世界時に基づき、指定された日時の「秒」を設定します。
setYear
非推奨
地方時に基づき、指定された日時の「年」を設定します。代わりに setFullYear を使うこと。
toDateString
日時の「日付」部を人間が読みやすい形式の文字列にして返します。
toGMTString
非推奨
インターネットでの GMT の書き習わしを使って、日時を文字列に変換します。代わりに toUTCString を使うこと。
toLocaleDateString
現地の書き習わしを使って、日時の「日付」部を文字列に変換します。
toLocaleFormat
非標準
書式化された文字列を使って、日時を文字列に変換します。
toLocaleString
現地の書き習わしを使って、日時を文字列に変換します。Object.toLocaleString メソッドを上書きしています。
toLocaleTimeString
現地の書き習わしを使って、日時の「時刻」部を文字列に変換します。
toSource
非標準
指定された Date オブジェクトを表すオブジェクトリテラルを返します。あなたはこの値を新しいオブジェクトを作るのに使うことができます。Object.protoype.toSource メソッドを上書きしています。
toString
指定された Date オブジェクトを表す文字列を返します。Object.prototype.toString メソッドを上書きしています。
toTimeString
日時の 「時刻」部を人間が読みやすい形式の文字列として返します。
toUTCString
世界時の書き習わしを使って、日時を文字列に変換します。
valueOf
Date オブジェクトのプリミティブ値を返します。Object.prototype.valueOf メソッドを上書きしています。

Object.prototype から継承されるメソッド
__defineGetter__, __defineSetter__, hasOwnProperty, isPrototypeOf, __lookupGetter__, __lookupSetter__, __noSuchMethod__, propertyIsEnumerable, unwatch, watch

[編集]

[編集] 例: 日時を代入するいくつかの方法

以下の例は日時を代入するいくつかの方法を示しています。

today = new Date();
birthday = new Date("December 17, 1995 03:24:00");
birthday = new Date(1995,11,17);
birthday = new Date(1995,11,17,3,24,0);

[編集] 例: 経過時間を計算する

以下の例は 2 つの日時の間の経過時間を特定する方法を示しています。

// 静的メソッドを使う
var start = Date.now();
// 時間を計りたいイベントをここで行う
doSomethingForALongTime();
var end = Date.now();
var elapsed = end - start; // ミリ秒での時間
// Date オブジェクトがあるなら
var start = new Date();
// 時間を計りたいイベントをここで行う
doSomethingForALongTime();
var end = new Date();
var elapsed = end.getTime() - start.getTime(); // ミリ秒での時間