Date.now()

Статичний метод Date.now() вертає кількість мілісекунд від 1 січня 1970 року о 00:00:00 за UTC.

Синтаксис

var timeInMs = Date.now();

Вертає

Число, що позначає кількість мілісекунд від початку епохи за часом Unix.

Запасний варіант (поліфіл)

Цей метод було стандартизовано 5-им випуском ECMA-262. Для рушіїв, що не мають підтримки цього метода, стане в пригоді таке рішення:

if (!Date.now) {
  Date.now = function now() {
    return new Date().getTime();
  };
}

Приклади

Зменшена точність часу

Для захисту від атак за часом чи за цифровими відбитками, точність Date.now() може бути округлена, в залежності від налаштувань переглядача.
У Firefox параметр privacy.reduceTimerPrecision за замовчуванням увімкнений та дорівнює 20 мс у Firefox 59; у 60 він дорівнюватиме 2 мс.

// зменшена точність часу (2 мс) у Firefox 60
Date.now()
// 1519211809934
// 1519211810362
// 1519211811670
// ...

// зменшена точність часу з увімкненим параметром `privacy.resistFingerprinting`
Date.now();
// 1519129853500
// 1519129858900
// 1519129864400
// ...

У Firefox ви також можете увімкнути privacy.resistFingerprinting, точність дорівнюватиме або 100 мс, або значенню privacy.resistFingerprinting.reduceTimerPrecision.microseconds, в залежності від того, що більше.

Специфікації

Специфікація
ECMAScript (ECMA-262)
The definition of 'Date.now' in that specification.

Підтримка веб-переглядачами

Update compatibility data on GitHub
DesktopMobileServer
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung InternetNode.js
nowChrome Full support 5Edge Full support 12Firefox Full support 3IE Full support 9Opera Full support 10.5Safari Full support 4WebView Android Full support 1Chrome Android Full support 18Firefox Android Full support 4Opera Android Full support 14Safari iOS Full support 4Samsung Internet Android Full support 1.0nodejs Full support 0.1.100

Legend

Full support  
Full support

Див. також

  • Performance.now() — вертає поточний час із роздільною здатністю вище мілісекунди для програмного вимірювання швидкодії веб-сторінки
  • console.time() / console.timeEnd()