Je développe une extension Chrome et je me demande s'il existe un moyen de détecter la version de Chrome utilisée par l'utilisateur.
Réponses
Trop de publicités?Obtenir la version majeure de Chrome sous la forme d'un nombre 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 originale, afin qu'elle ne lève pas d'exception dans d'autres navigateurs et qu'elle n'utilise pas de fonctionnalités obsolètes.
Vous pouvez également définir minimum_chrome_version
dans le manifeste afin d'empêcher les utilisateurs de versions plus anciennes de 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 de l'objet renvoyé est basée sur les éléments suivants este Bien qu'il soit possible de l'adapter pour qu'elle soit basée sur la convention de la este au lieu de cela.