web-dev-qa-db-fra.com

Comment détecter la version Chrome Chrome installée?)

Je développe une extension Chrome et je me demande s'il existe un moyen de détecter la version de Chrome que l'utilisateur utilise?

43
Skizit

Obtenez la version principale de Chrome sous forme d'entier:

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

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

J'ai mis à jour la réponse d'origine, afin qu'elle ne lève pas d'exception dans les autres navigateurs et n'utilise pas de fonctionnalités obsolètes.

Vous pouvez également définir minimum_chrome_version dans le manifeste pour ne pas laisser les utilisateurs avec des versions plus anciennes l'installer.

101
serg

Voici une version, basée sur la réponse de @serg, qui extrait tous les éléments du numéro de version:

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]
    };
}

La dénomination des éléments dans l'objet renvoyé est basée sur la convention this , bien que vous puissiez bien sûr l'adapter pour qu'elle soit basée sur this à la place.

3
drmrbrewer