В этом руководстве вы узнаете об объекте JavaScript Navigator и его свойствах.
Навигатор JavaScript предоставляет информацию о веб-браузере и его возможностях. Вы можете ссылаться на объект Navigator через свойство window.navigator, доступное только для чтения.
Объект Navigator имеет свойства, передающие информацию браузера. Например, userAgent является свойством объекта window.navigator. Это длинная строка, которая идентифицирует веб-браузер.
window.navigator.userAgent
В Google Chrome вы можете увидеть следующий вывод:
"Mozilla/5.0(Windows NT 10.0; Win64; x64) AppleWebKit/537.36(KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36"
Обратите внимание, что userAgent может немного отличаться в зависимости от версии Google Chrome.
Другой веб-браузер предоставляет определенные возможности, которые не стандартизированы. Лучше не использовать userAgent для идентификации веб-браузера, потому что некоторые веб-браузеры позволяют пользователям изменять userAgent, чтобы они делали вид, что используют другой браузер.
Например, вы можете использовать следующий код, чтобы определить, является ли текущий веб-браузер Internet Explorer:
if(navigator.userAgent.includes('MSIE')) {
// IE, use specific features of IE
} else {
// not IE
}
Чтобы использовать определенную функцию веб-браузера, вы можете использовать обнаружение возможностей. Например:
if( typeof window.addEventListener === 'function' ) {
// let's use addEventListener
} else {
// addEventListener is not supported, use another way
}
Свойства и методы
В следующей таблице показаны свойства и методы JavaScript Navigator :
| Свойство/метод | Описание |
|---|---|
| activeVrDisplays | Возвращает массив каждого экземпляра presenting, для свойства представления которого задано значение true. |
| appCodeName | Возвращает «Mozilla» даже в браузерах, отличных от Mozilla. |
| appName | Возвращает полное имя браузера. |
| appVersion | Возвращает версию браузера. Однако обычно это не соответствует реальной версии браузера. |
| battery | Возвращает объект BatteryManager для взаимодействия с API состояния батареи. |
| buildId | Возвращает номер сборки для веб-браузера. |
| connection | Возвращает объект NetworkInformation для взаимодействия с API информации о сети. |
| cookieEnabled | Возвращает true, если файлы cookie включены; иначе false. |
| credentials | Возвращает CredentialsContainer для взаимодействия с Credentials Management API. |
| deviceMemory | Возвращает объем памяти устройства в гигабайтах. |
| doNotTrack | Возвращает предпочтение пользователя «не отслеживать». |
| geolocation | Возвращает объект Geolocation для взаимодействия с API геолокации. |
| getVRDisplays() | Возвращает массив всех экземпляров VRDisplay, если они доступны. |
| getUserMedia() | Возвращает поток, связанный с доступным оборудованием мультимедийного устройства. |
| hardwareConcurrency | Возвращает количество ядер процессора устройства |
| javaEnabled | Определяет, включена ли Java в браузере. |
| language | Возвращает основной язык браузера. |
| languages | Возвращает массив всех предпочтительных языков браузера. |
| locks | Возвращает объект LockManager для взаимодействия с API веб-замков. |
| mediaCapabilities | Возвращает объект MediaCapabilities для взаимодействия с API возможностей мультимедиа. |
| mediaDevices | Возвращает доступные мультимедийные устройства. |
| maxTouchPoints | Возвращает максимальное количество поддерживаемых точек касания для сенсорного экрана устройства. |
| mimeTypes | Возвращает массив типов MIME, зарегистрированных в браузере. |
| onLine | Указывает, подключен ли браузер к Интернету. |
| oscpu | Операционная система(ОС) и/или процессор, на котором работает браузер. |
| permissions | Возвращает объект разрешений для взаимодействия с API разрешений. |
| platform | Возвращает системную платформу, на которой работает браузер. |
| plugins | Возвращает массив установленных плагинов браузера. |
| product | Возвращает название продукта. |
| productSub | Возвращает дополнительную информацию о продукте. |
| registerProtocolHandler() | Регистрирует веб-сайт в качестве обработчика для определенного протокола. |
| requestMediaKeySystemAccess() | Возвращает обещание, которое разрешается в объект MediaKeySystemAccess. |
| sendBeacon() | Асинхронно передает небольшую полезную нагрузку. |
| serviceWorker | Возвращает ServiceWorkerContainer, используемый для взаимодействия с объектом ServiceWorker. |
| share() | Вызывает собственный механизм совместного использования текущей платформы. |
| storage | Возвращает объект StorageManager для взаимодействия с Storage API. |
| userAgent | Представляет строку пользовательского агента браузера. |
| vendor | Возвращает название бренда браузера. |
| vendorSub | Возвращает дополнительную информацию о поставщике браузера. |
| vibrate() | Запускает вибрацию устройства, если вибрация поддерживается. |
| webdriver | Определяет, контролируется ли браузер в настоящее время автоматизацией. |
