如何检测已安装的Chrome版本?

时间:2011-02-04 16:33:46

标签: javascript google-chrome google-chrome-extension

我正在开发Chrome扩展程序,我想知道有哪种方法可以检测用户使用的是哪个版本的Chrome?

2 个答案:

答案 0 :(得分:100)

将Chrome的主要版本视为整数:

function getChromeVersion () {     
    var raw = navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);

    return raw ? parseInt(raw[2], 10) : false;
}

我已经更新了原始答案,因此它不会在其他浏览器中引发异常,也不会使用已弃用的功能。

您还可以在清单中设置minimum_chrome_version,以免旧版本的用户安装它。

答案 1 :(得分:3)

这是一个基于@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]
    };
}

返回的对象中元素的命名基于this约定,但您当然可以将其调整为基于this