Подтвердить что ты не робот

Performance.now() vs Date.now()

В чем разница между performance.now() и Date.now()?

Должен ли я рассматривать performance.now() как замену для Date.now(), поскольку performace.now() более последователен и независим?

4b9b3361

Ответ 1

Оба они служат для разных целей.

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

Следует отметить, что performance.now() доступен только в новых браузерах (включая IE10 +).

Date.now() относительно эпохи Unix (1970-01-01T00: 00: 00Z) и зависит от системных часов. К примерам использования относятся такие же старые манипуляции с датами с самого начала JavaScript.

См. Если миллисекунд недостаточно: performance.now и now метод (Internet Explorer) - MSDN для получения дополнительной информации.

Официальную спецификацию W3C можно найти здесь: API с высоким разрешением времени

Ответ 2

Date.now() возвращает количество миллисекунд, прошедших с 1 января 1970 г. 00:00:00 UTC, performance.now() возвращает количество миллисекунд, с микросекундами в дробной части, от performance.timing.navigationStart, начало навигации по документу, к вызову performance.now(). Еще одно важное отличие между Date.now() и performance.now() состоит в том, что последнее монотонно возрастает, поэтому разница между двумя вызовами никогда не будет отрицательной.

Для лучшего понимания посетите ссылку.