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 からのミリ秒数を返します。
Object.prototype から継承されるメソッド
__defineGetter__, __defineSetter__, hasOwnProperty, isPrototypeOf, __lookupGetter__, __lookupSetter__, __noSuchMethod__, propertyIsEnumerable, unwatch, watch
[編集] Date インスタンス
Date インスタンスは、Date.prototype を継承しています。コンストラタのプロトタイプを変更することで、Date インスタンスによって継承されたプロパティとメソッドに影響を与えることができます。
いわゆる 2000 年問題との互換性のために、年を常に完全な形で指定するべきです。例えば、98 ではなく、1998 を使ってください。完全な形で年を指定することを支援するために、JavaScript には、getFullYear、setFullYear、getUTCFullYear、そして、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(); // ミリ秒での時間