js获取浏览器版本

简介: js获取浏览器版本

获取浏览器版本

   <script>
        function getBrowser() {
            var UserAgent = navigator.userAgent.toLowerCase();
            var browserInfo = {};
            var browserArray = {
                IE: window.ActiveXObject || "ActiveXObject" in window,
                // IE       
                Chrome: UserAgent.indexOf('chrome') > -1 && UserAgent.indexOf('safari') > -1,
                // Chrome浏览器       
                Firefox: UserAgent.indexOf('firefox') > -1,
                // 火狐浏览器       
                Opera: UserAgent.indexOf('opera') > -1,
                // Opera浏览器        
                Safari: UserAgent.indexOf('safari') > -1 && UserAgent.indexOf('chrome') == -1,
                // safari浏览器        
                Edge: UserAgent.indexOf('edge') > -1,
                // Edge浏览器        
                QQBrowser: /qqbrowser/.test(UserAgent),
                // qq浏览器        
                WeixinBrowser: /MicroMessenger/i.test(UserAgent)
                // 微信浏览器  
            };
            // console.log(browserArray)  
            for (var i in browserArray) {
                if (browserArray[i]) {
                    var versions = '';
                    if (i == 'IE') {
                        versions = UserAgent.match(/(msie\s|trident.*rv:)([\w.]+)/)[2];
                    } else if (i == 'Chrome') {
                        for (var mt in navigator.mimeTypes) {
                            //检测是否是360浏览器(测试只有pc端的360才起作用)      
                            if (navigator.mimeTypes[mt]['type'] == 'application/360softmgrplugin') {
                                i = '360';
                            }
                        }
                        versions = UserAgent.match(/chrome\/([\d.]+)/)[1];
                    } else if (i == 'Firefox') {
                        versions = UserAgent.match(/firefox\/([\d.]+)/)[1];
                    } else if (i == 'Opera') {
                        versions = UserAgent.match(/opera\/([\d.]+)/)[1];
                    } else if (i == 'Safari') {
                        versions = UserAgent.match(/version\/([\d.]+)/)[1];
                    } else if (i == 'Edge') {
                        versions = UserAgent.match(/edge\/([\d.]+)/)[1];
                    } else if (i == 'QQBrowser') {
                        versions = UserAgent.match(/qqbrowser\/([\d.]+)/)[1];
                    }
                    browserInfo.type = i; browserInfo.versions = parseInt(versions);
                }
            } return browserInfo;
        }
    </script>


目录
相关文章
|
9天前
|
运维 Prometheus 监控
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
|
2月前
|
Web App开发 JavaScript 前端开发
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
添加浮动按钮点击滚动到网页底部的纯JavaScript演示代码 IE9、11,Maxthon 1.6.7,Firefox30、31,360极速浏览器7.5.3.308下测试正常
|
17天前
|
JSON 移动开发 JavaScript
在浏览器执行js脚本的两种方式
【10月更文挑战第20天】本文介绍了在浏览器中执行HTTP请求的两种方式:`fetch`和`XMLHttpRequest`。`fetch`支持GET和POST请求,返回Promise对象,可以方便地处理异步操作。`XMLHttpRequest`则通过回调函数处理请求结果,适用于需要兼容旧浏览器的场景。文中还提供了具体的代码示例。
在浏览器执行js脚本的两种方式
|
14天前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
|
21天前
|
Web App开发 JavaScript 前端开发
使用 Chrome 浏览器的内存分析工具来检测 JavaScript 中的内存泄漏
【10月更文挑战第25天】利用 Chrome 浏览器的内存分析工具,可以较为准确地检测 JavaScript 中的内存泄漏问题,并帮助我们找出潜在的泄漏点,以便采取相应的解决措施。
135 9
|
28天前
|
JavaScript 测试技术 API
跟随通义灵码一步步升级vue2(js)项目到vue3版本
Vue 3 相较于 Vue 2 在性能、特性和开发体验上都有显著提升。本文介绍了如何利用通义灵码逐步将 Vue 2 项目升级到 Vue 3,包括备份项目、了解新特性、选择升级方式、升级依赖、迁移组件和全局 API、调整测试代码等步骤,并提供了注意事项和常见问题的解决方案。
|
1月前
|
JavaScript 前端开发 索引
JavaScript ES6及后续版本:新增的常用特性与亮点解析
JavaScript ES6及后续版本:新增的常用特性与亮点解析
28 4
|
12天前
|
JavaScript Linux iOS开发
详解如何实现自由切换Node.js版本
不同的项目中需要使用不同版本的 Node.js,有时旧项目需要旧版本,而新项目则可能依赖最新的 Node.js 版本
|
1月前
|
机器学习/深度学习 自然语言处理 前端开发
前端大模型入门:Transformer.js 和 Xenova-引领浏览器端的机器学习变革
除了调用API接口使用Transformer技术,你是否想过在浏览器中运行大模型?Xenova团队推出的Transformer.js,基于JavaScript,让开发者能在浏览器中本地加载和执行预训练模型,无需依赖服务器。该库利用WebAssembly和WebGPU技术,大幅提升性能,尤其适合隐私保护、离线应用和低延迟交互场景。无论是NLP任务还是实时文本生成,Transformer.js都提供了强大支持,成为构建浏览器AI应用的核心工具。
444 1
|
1月前
|
Web App开发 JavaScript 前端开发
JavaScript Window - 浏览器对象模型
JavaScript Window - 浏览器对象模型
22 2

热门文章

最新文章

下一篇
无影云桌面