2015-01-21 3 views
0

Как я могу проверить, поддерживает ли браузер функцию performace.now() vs Date()? Мой мобильный браузер выдает ошибку, когда пытается вызвать функцию performace.now().Тест для performace.now() через JavaScript

if (performance) { 
    performace.now() 
} 

Вышеуказанное не работает.

+0

'Date() в настоящее время()' является недействительным, экземпляр объекта Date не имеет теперь метод. Это должно быть 'Date.now()'. Кстати, какова ваша цель? Если это просто измерение производительности при тестировании алгоритмов, то есть оно не будет просматриваться пользователями, вы можете использовать ['console.time'] (https://developer.mozilla.org/en-US/docs/Web/API /Console.time). –

ответ

1

Попробуйте использовать эту проверку:.

if (('performance' in window) && (typeof performance.now === 'function')) { 
    //your code 
} 
+0

Будет ли это быстрее, чем использовать блок try? –

+0

Да. Избегайте использования блока try внутри критически важных функций. Дополнительная информация здесь https://dev.opera.com/articles/efficient-javascript/?page=2#trycatch – frosdqy

+0

@frosdqy: Обратите внимание, что обнаружение признаков обычно не критично для производительности :-) – Bergi