DOMTimestamp

EpochTimeStamp 型 (DOM)

[14] DOMTimeStamp は、ミリ秒数を表すです。

仕様書

意味

[12] DOMTimeStamp は、ミリ秒数を表します DOM 2 Core, DOM 3 Core, >>11

[16] これは絶対時刻の場合もあれば、相対的な時間の量のこともあります >>11

[13] DOMTimeStamp は、 unsigned long longtypedef したものです DOM 2 Core, DOM 3 Core, >>11

文脈

[5] Event インターフェイスtimeStamp IDL属性では、1970年1月1日からの閏秒を無視したミリ秒数を表します >>20

[24] W3C DOM 時代は、かなり曖昧な規定でした。 この属性の値は、紀元からの相対時刻をミリ秒で表現したものです。 紀元は実装依存 (束縛依存? システム依存?) で、 システム開始時でも1970年1月1日でも何でも良いようです。 DOM 2 Events, DOM 3 Events

[28] それもあって実装状況はかなり悲惨なようです >>27

[19] 通知時刻印 (Notification オブジェクトtimestamp IDL属性NotificationOptions 辞書timestamp メンバー) では、1970年1月1日からのミリ秒数を表します >>20

[25] 閏秒の規定はありません。意図は無視だと思われますが...

[22] webNavigation API の timeStamp 引数は、 double 型と説明されていますが、 epoch からのミリ秒数を表します >>21。 実質的に DOMTimeStamp です。

[40] GeolocationPosition で使われます。

[34] SensorReadingtimeStamp IDL属性は、 DOMTimeStamp から DOMHighResTimeStamp に変更されました。

関連

[8] HTMLHTMLMediaElement 界面currentTime DOM属性は、媒体現在時刻を表すものですが、float double であって、 DOMTimeStamp ではありません。 値も単位です。

[26] Date も参照。

歴史

W3C DOM 時代

[1] DOMTimeStamp 型は、 相対時刻や絶対時刻を蓄積するために使用します DOM 3 Core。 この型は相互運用性の向上のために導入されました DOM 2 Core

[4] 仕様書:

[2] DOM 束縛は、 DOMTimeStamp に異なる型を使用して構いません DOM 2 Core, DOM 3 Core

Java
Java 束縛では、 long 型を使います DOM 2 Core, DOM 3 Core
ECMAScript
ECMAScript 束縛では、 (integer 型は小さすぎるので) Date 型を使います。 DOM 2 Core, DOM 3 Core

[3] >>2 Date 型は The Epoch (1970年1月1日) からのミリ秒数です。

[7] >>3 しかも閏秒は考えないそうです ECMAScript TE

[6] この型は絶対時刻表現につかうことも想定しているみたいですが (>>1)、実際には相対時刻表現にしか使われていません (>>5)。 絶対時刻表現につかうとすると閏秒などに関する規定が必要になりますが、 DOM 3 までの仕様書には見当たりません。

Web IDL 時代

[9] DOMTimeStamp binding (Kartikaya Gupta 著, 版) http://lists.w3.org/Archives/Public/public-webapps/2009JanMar/0386.html

[10] Leap seconds are ignored by JavaScript (not clear if implementations fol... · 4ad095c · whatwg/dom ( ( 版)) https://github.com/whatwg/dom/commit/4ad095c0e6edc6d358fc0a3ef19e4461bf571c7b

[15] Merge pull request #342 from martinthomson/issue324 · w3c/webrtc-pc@05909f7 ( 版) https://github.com/w3c/webrtc-pc/commit/05909f7d33c0dca829816c3ca47b93a593fb9fc6

[17] 1231619 – CSS Animation not properly timed when using AngularJS animate on Firefox Developer edition and nightly ( 版) https://bugzilla.mozilla.org/show_bug.cgi?id=1231619

[18] Change the type of `timestamp` to DOMTimeStamp · whatwg/notifications@e234c43 ( 版) https://github.com/whatwg/notifications/commit/e234c43b23d180c2a1c88e6ce00815de334cafdd

[21] chrome.webNavigation - Google Chrome () https://developer.chrome.com/extensions/webNavigation

[27] High resolution timing for events · Issue #23 · whatwg/dom ( ()) https://github.com/whatwg/dom/issues/23

[29] 1231619 – CSS Animation not properly timed when using AngularJS animate on Firefox Developer edition and nightly ( ()) https://bugzilla.mozilla.org/show_bug.cgi?id=1231619

[30] event.timeStamp now returns DOMHighResTimeStamp on Nightly/Aurora for Linux (Affected) | Firefox Site Compatibility ( ()) https://www.fxsitecompat.com/en-CA/docs/2015/event-timestamp-now-returns-domhighrestimestamp-on-nightly-aurora-for-linux/

[31] 77992 – Make Event.timeStamp return a DOMHighResTimeStamp on Windows (was Event.timeStamp should be relative to 1st January 1970 rather than the system start) ( ()) https://bugzilla.mozilla.org/show_bug.cgi?id=77992

[32] 1026804 – Make Event.timeStamp return a DOMHighResTimeStamp by default (switch on pref) ( ()) https://bugzilla.mozilla.org/show_bug.cgi?id=1026804

[33] receivedTime and upcoming DOM update · Issue #145 · WebAudio/web-midi-api ( ()) https://github.com/WebAudio/web-midi-api/issues/145

[35] Issue 574514 - chromium - MSE conformance test failure related to event.timeStamp - Monorail ( ()) https://bugs.chromium.org/p/chromium/issues/detail?id=574514

[36] High Resolution Timestamps for Events | Web Updates - Google Developers ( ()) https://developers.google.com/web/updates/2016/01/high-res-timestamps

[37] Timestamp data types and HTMLMediaElement currentTime · Issue #41 · w3c/tvcontrol-api () https://github.com/w3c/tvcontrol-api/issues/41

[38] Use DOMTimeStamp type for date and time values · Issue #5 · w3c/tvcontrol-api () https://github.com/w3c/tvcontrol-api/issues/5

[39] Add PushSubscription.expirationTime (#248) (beverloo著, ) https://github.com/w3c/push-api/commit/73da6411aac80de7de9bf5e65ee8eb4cc6a9aa24

改名

[41] Define the EpochTimeStamp typedef by marcoscaceres · Pull Request #124 · w3c/hr-time · GitHub, https://github.com/w3c/hr-time/pull/124/files

[42] Remove DOMTimeStamp by marcoscaceres · Pull Request #1021 · whatwg/webidl · GitHub, https://github.com/whatwg/webidl/pull/1021

[43] DOMTimeStamp confusion · Issue #2 · whatwg/webidl · GitHub, https://github.com/whatwg/webidl/issues/2