как определить браузер и его версию с помощью javascript
Ответы

Ivan Gagarinov
5 дней назад
Можно определить с помощью navigator.userAgent
. В примере ниже создается функция getBrowserInfo()
внутри которой проверяется свойство userAgent
с помощью регулярных выражений.
function getBrowserInfo() {
const userAgent = navigator.userAgent;
let browserName;
let fullVersion;
// Проверка на различные браузеры
if (userAgent.indexOf("Chrome") > -1) {
browserName = "Chrome";
fullVersion = userAgent.substring(userAgent.indexOf("Chrome") + 7);
fullVersion = fullVersion.substring(0, fullVersion.indexOf(" "));
} else if (userAgent.indexOf("Firefox") > -1) {
browserName = "Firefox";
fullVersion = userAgent.substring(userAgent.indexOf("Firefox") + 8);
} else if (userAgent.indexOf("Safari") > -1) {
browserName = "Safari";
fullVersion = userAgent.substring(userAgent.indexOf("Safari") + 7);
fullVersion = fullVersion.substring(0, fullVersion.indexOf(" "));
} else if (userAgent.indexOf("MSIE") > -1 || userAgent.indexOf("Trident") > -1) {
browserName = "Internet Explorer";
fullVersion = userAgent.indexOf("MSIE") > -1
? userAgent.substring(userAgent.indexOf("MSIE") + 5)
: userAgent.substring(userAgent.indexOf("rv:") + 3);
fullVersion = fullVersion.substring(0, fullVersion.indexOf(";") || fullVersion.indexOf(" "));
} else {
browserName = "Unknown";
fullVersion = "Unknown";
}
return {
browser: browserName,
version: fullVersion
};
}
const browserInfo = getBrowserInfo();
console.log("Browser Name: ", browserInfo.browser);
console.log("Browser Version: ", browserInfo.version);
Для более надежной проверки можно использовать библиотеки, такие как bowser
, detect-browser
или platform.js
. Например, вот как это можно сделать с bowser
:
import Bowser from "bowser";
const browser = Bowser.getParser(window.navigator.userAgent);
console.log(`Browser Name: ${browser.getBrowserName()}`);
console.log(`Browser Version: ${browser.getBrowserVersion()}`);
0
0