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?
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.
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.