赞
踩
navigator.userAgent.toLowerCase()
navigator是Browser内置对象
userAgent是navigator的属性方法,可以返回客户机发送服务器的头部信息。作用是返回当前用户所使用的什么浏览器
toLowerCase()转换为小写
- let sysObj = {};
- let browserInfo = navigator.userAgent.toLowerCase();
- let vsMsg;
-
- (vsMsg = browserInfo.match(/msie ([\d.]+)/)) ? sysObj.ie = vsMsg[1]:
- (vsMsg = browserInfo.match(/firefox\/([\d.]+)/)) ? sysObj.firefox = vsMsg[1] :
- (vsMsg = browserInfo.match(/chrome\/([\d.]+)/)) ? sysObj.chrome = vsMsg[1] :
- (vsMsg = browserInfo.match(/opera.([\d.]+)/)) ? sysObj.opera = vsMsg[1] :
- (vsMsg = browserInfo.match(/version\/([\d.]+).*safari/)) ? sysObj.safari = vsMsg[1] : 0;
-
- if (sysObj.ie) {
- console.log('IE: ' + sysObj.ie)
- }
- if (sysObj.firefox) {
- console.log('Firefox: ' + sysObj.firefox)
- }
- if (sysObj.chrome) {
- console.log('Chrome: ' + sysObj.chrome)
- }
- if (sysObj.opera) {
- console.log('Opera: ' + sysObj.opera)
- };
- if (sysObj.safari) {
- console.log('Safari: ' + sysObj.safari)
- }
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配
上面是对这个方法是JavaScript判断浏览器以及浏览器版本
截图效果
看来是没有问题的,也就不一一测试了。
- function getBrowserInfo() {
- let sysObj = {};
- let browserInfo = navigator.userAgent.toLowerCase();
- let regular = /(msie|firefox|chrome|opera|version).*?([\d.]+)/;
- let vsMsg = browserInfo.match(regular);
- sysObj.browserName = vsMsg[1].replace(/version/, "'safari");
- sysObj.versionInfo = vsMsg[2];
- return sysObj;
- }
- let browserInfo = getBrowserInfo();
- console.log(browserInfo.browserName + "的版本是:" + browserInfo.versionInfo)
这个只是区分pc端的浏览器,移动端不适用,而且移动端除了安卓和苹果外还有一些App内置的浏览器,比如新浪微博、腾讯QQ(非QQ浏览器)和微信
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。