Timestamps
Syntax#
- millisecondsAndMicrosecondsSincePageLoad = performance.now();
- millisecondsSinceYear1970 = Date.now();
- millisecondsSinceYear1970 = (new Date()).getTime();
Remarks#
performance.now() is available in modern web browsers and provides reliable timestamps with sub-millisecond resolution.
Since Date.now() and (new Date()).getTime() are based on the system time, they often get skewed by a few milliseconds when the system time is automatically synchronized.
High-resolution timestamps
performance.now() returns a precise timestamp: The number of milliseconds, including microseconds, since the current web page started to load.
More generally, it returns the time elapsed since the performanceTiming.navigationStart event.
t = performance.now();For example, in a web browser’s main context, performance.now() returns 6288.319 if the web page began to load 6288 milliseconds and 319 microseconds ago.
Low-resolution timestamps
Date.now() returns the number of whole milliseconds that have elapsed since 1 January 1970 00:00:00 UTC.
t = Date.now();For example, Date.now() returns 1461069314 if it was called on 19 April 2016 at 12:35:14 GMT.
Support for legacy browsers
In older browsers where Date.now() is unavailable, use (new Date()).getTime() instead:
t = (new Date()).getTime();Or, to provide a Date.now() function for use in older browsers, use this polyfill:
if (!Date.now) {
Date.now = function now() {
return new Date().getTime();
};
}Get Timestamp in Seconds
To get the timestamp in seconds
Math.floor((new Date().getTime()) / 1000)