@ssports_fe/ssutils
Version:
37 lines (33 loc) • 1.29 kB
JavaScript
/**
*
* @desc 获取浏览器类型和版本
* @return {String}
*/
const getExplore = () => {
let sys = {};
let ua = navigator.userAgent.toLowerCase();
if (ua.match(/rv:([\d.]+)\) like gecko/)) {
sys.ie = ua.match(/rv:([\d.]+)\) like gecko/)[1];
} else if (ua.match(/msie ([\d.]+)/)) {
sys.ie = ua.match(/msie ([\d.]+)/)[1];
} else if (ua.match(/edge\/([\d.]+)/)) {
sys.edge = ua.match(/edge\/([\d.]+)/)[1];
} else if (ua.match(/firefox\/([\d.]+)/)) {
sys.firefox = ua.match(/firefox\/([\d.]+)/)[1];
} else if (ua.match(/(?:opera|opr).([\d.]+)/)) {
sys.opera = ua.match(/(?:opera|opr).([\d.]+)/)[1];
} else if (ua.match(/chrome\/([\d.]+)/)) {
sys.chrome = ua.match(/chrome\/([\d.]+)/)[1];
} else if (ua.match(/version\/([\d.]+).*safari/)) {
sys.safari = ua.match(/version\/([\d.]+).*safari/)[1];
}
// 根据关系进行判断
if (sys.ie) return ('IE: ' + sys.ie);
if (sys.edge) return ('EDGE: ' + sys.edge);
if (sys.firefox) return ('Firefox: ' + sys.firefox);
if (sys.chrome) return ('Chrome: ' + sys.chrome);
if (sys.opera) return ('Opera: ' + sys.opera);
if (sys.safari) return ('Safari: ' + sys.safari);
return 'Unkonwn';
};
module.exports = getExplore;