JavaScript метод Date.now()

Определение и применение

JavaScript метод now() объекта Date возвращает числовое значение, соответствующее текущему времени - количество миллисекунд, прошедших с 00:00:00 1 января 1970 по UTC.

Этот метод аналогичен использованию метода getTime() на новом объекте Date созданным без параметров:

JavaScript
const val = new Date().getTime();

Поддержка браузерами

Спецификация: ecma262

Поддерживается во всех основных браузерах с 2015 года.

Показать браузеры
Совместимостьjavascript.builtins.Date.now
ВозможностьКомпьютерыМобильные
ChromeEdgeFirefoxOperaSafariChrome AndroidFirefox for AndroidOpera AndroidSafari on iOSSamsung BrowserWebView AndroidWebView on iOS
now✓1✓12✓1✓10.5✓4✓18✓4✓14✓4✓1.0✓4.4✓4

поддерживаетсяс ограниченияминет поддержкинет данных≤31 — не позднее версии 31

JavaScript синтаксис

JavaScript
Date.now();

Для измерения длительности предпочтителен performance.now(): его монотонные показания не зависят от перевода системных часов. Точность часов может ограничиваться браузером; короткая операция может дать разность 0 мс.

Date.now() — статический метод без параметров: его вызывают у Date, а не у экземпляра. Он возвращает текущую метку времени в миллисекундах, не создавая объект даты. Отдельные вызовы Date.now() и new Date().getTime() могут различаться, потому что выполняются в разные моменты.

Спецификация

ECMAScript — Date.now(). Метод входит в стандарт начиная с ECMAScript 5.

Примеры, попробуйте сами

now() — пример 1

Запустите несколько раз: длительность зависит от выполнения программы и точности часов.

index.html
HTML
<p>Результат выполнения выводится в консоль.</p>
main.js
JavaScript
let endTime, startTime, result // создаем пустые переменные

startTime = Date.now() // получаем числовое значение, соответствующее текущему времени в миллисекундах
for (let i = 0; i < 10000; i++) {
    Math.pow(i, i) // вычисляем переданное число i в указанной степени i
}
endTime = Date.now() // получаем числовое значение, соответствующее текущему времени в миллисекундах

result = endTime - startTime // получаем разницу в миллисекундах
console.log(result + ' ms') // Время в мс зависит от запуска и точности часов; возможно 0.

Вычитание двух последующих вызовов метода now() позволило нам в этом примере получить время выполнения цикла, в котором каждое число возводится в степень, равную самому себе.