我正在开发 Chrome 扩展程序,我想知道有没有一种方法可以检测用户使用的是哪个版本的 Chrome?
如何检测已安装的 Chrome 版本?
IT技术
javascript
google-chrome
google-chrome-extension
2021-02-26 23:55:15
3个回答
以整数形式获取 Chrome 的主要版本:
function getChromeVersion () {
var raw = navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);
return raw ? parseInt(raw[2], 10) : false;
}
我已经更新了原始答案,因此它不会在其他浏览器中引发异常,并且不会使用已弃用的功能。
您还可以minimum_chrome_version
在清单中设置不允许旧版本的用户安装它。
这是一个基于@serg 的答案的版本,它提取了版本号的所有元素:
function getChromeVersion () {
var pieces = navigator.userAgent.match(/Chrom(?:e|ium)\/([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)/);
if (pieces == null || pieces.length != 5) {
return undefined;
}
pieces = pieces.map(piece => parseInt(piece, 10));
return {
major: pieces[1],
minor: pieces[2],
build: pieces[3],
patch: pieces[4]
};
}
替代的现代解决方案可以只是检查 navigator.userAgentData.brands
例如:
Boolean(navigator.userAgentData?.brands.find(({ brand, version }) => brand === 'Chromium' && parseFloat(version, 10) >= 93))
其它你可能感兴趣的问题