Heim >Web-Frontend >js-Tutorial >Wie kann ich Browser und Version mithilfe von JavaScript zuverlässig erkennen?
Die Bestimmung des genauen Browsers und der genauen Version mithilfe von JavaScript kann ein wertvolles Werkzeug für maßgeschneiderte Weberlebnisse sein. So können Sie dies erreichen:
Navigator-API:
Die Navigator-Eigenschaft in JavaScript bietet Zugriff auf Browserinformationen. Seine userAgent-Eigenschaft enthält eine Zeichenfolge, die den Browser und seine Version identifiziert.
Regex-Ausdrücke verwenden:
Um den Browsernamen und die Version aus der userAgent-Zeichenfolge zu extrahieren, können Sie Folgendes tun Verwenden Sie reguläre Ausdrücke. Der folgende Beispielcode verwendet einen umfassenden regulären Ausdruck, um die verschiedenen Browser und ihre Versionen zu erkennen:
navigator.saysWho = (() => { const { userAgent } = navigator; let match = userAgent.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i) || []; let temp; // Handle special cases if (/trident/i.test(match[1])) { temp = /\brv[ :]+(\d+)/g.exec(userAgent) || []; return `IE ${temp[1] || ''}`; } if (match[1] === 'Chrome') { temp = userAgent.match(/\b(OPR|Edge)\/(\d+)/); if (temp !== null) { return temp.slice(1).join(' ').replace('OPR', 'Opera'); } temp = userAgent.match(/\b(Edg)\/(\d+)/); if (temp !== null) { return temp.slice(1).join(' ').replace('Edg', 'Edge (Chromium)'); } } // Construct the browser information string match = match[2] ? [match[1], match[2]] : [navigator.appName, navigator.appVersion, '-?']; temp = userAgent.match(/version\/(\d+)/i); if (temp !== null) { match.splice(1, 1, temp[1]); } return match.join(' '); })(); console.log(navigator.saysWho); // outputs: `Chrome 89`
Dieses Skript gleicht die Benutzeragentenzeichenfolge mit verschiedenen Browsermustern ab und gibt den extrahierten Browser und die Version als Zeichenfolge zurück.
Das obige ist der detaillierte Inhalt vonWie kann ich Browser und Version mithilfe von JavaScript zuverlässig erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!