Date.prototype.getTime()

 

Метод getTime() повертає кількість мілісекунд* з початку часу Unix.

* JavaScript використовує мілісекунди як одиницю вимірювання, тоді як час Unix вимірюється у секундах.

getTime() завжди використовує UTC для подання часу. Наприклад, у клієнтському оглядачі в одному часовому поясі getTime() буде таким самим, як і в оглядачі у будь-якому іншому часовому поясі.

Ви можете скористатись цим методом, щоб допомогти присвоїти дату та час іншому об'єкту Date. Цей метод функціонально еквівалентний методу valueOf().

Синтаксис

dateObj.getTime()

Повертає

Число, що відображає кількість мілісекунд між 1 січня 1970 року 00:00:00 за UTC та наданою датою.

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

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

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


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

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

Приклади

Використання getTime() для копіювання дати

Створення об'єкта дати з ідентичним значенням часу.

// Оскільки місяці нумеруються з нуля, birthday дорівнює 10 січня 1995
var birthday = new Date(1994, 12, 10);
var copy = new Date();
copy.setTime(birthday.getTime());

Вимірюємо час виконання

Віднімання між двома викликами getTime() на новозгенерованих об'єктах Date дасть проміжок часу між цими двома викликами. Це можна використати, щоб обчислити час виконання деяких операцій. Дивіться також Date.now(), щоб запобігти створенню непотрібних екземплярів Date.

var end, start;

start = new Date();
for (var i = 0; i < 1000; i++) {
  Math.sqrt(i);
}
end = new Date();

console.log('Операція зайняла ' + (end.getTime() - start.getTime()) + ' мсек');

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

Сумісність з веб-переглядачами

BCD tables only load in the browser

Див. також