终极合体
根据以上的条件判断获得的变量如下,我们可以把它们合并成一个对象输出 。这样就可以输出一个清晰的浏览器运行环境,后面想干嘛就干嘛了,多方便 。
本文重点探究方案的可行性,没有过多考虑到代码的优化,所以条件判断使用得有些多,如果有什么方法能优化下代码,减少条件判断,可以在下方评论提个建议哟 。
- system:系统
- systemVs:系统版本
- platform:平台
- engine:内核
- engineVs:内核版本
- supporter:载体
- supporterVs:载体版本
- shell:外壳
- shellVs:外壳版本
function BrowserType() { const ua = navigator.userAgent.toLowerCase(); const testUa = regexp => regexp.test(ua); const testVs = regexp => ua.match(regexp).toString().replace(/[^0-9|_.]/g, "").replace(/_/g, "."); // 接上以上if...else条件判断 // ...... // 获取到system、systemVs、platform、engine、engineVs、supporter、supporterVs、shell、shellVs return Object.assign({ engine, // webkit gecko presto trident engineVs, platform, // desktop mobile supporter, // chrome safari firefox opera iexplore edge supporterVs, system, // windows macos linux android ios systemVs }, shell === "none" ? {} : { shell, // wechat qq uc 360 2345 sougou liebao maxthon shellVs });}在控制台执行BrowserType(),该有的都出来了,哈哈!源码详情请戳这里,喜欢的可以点个赞支持下,谢谢 。

文章插图
结语写到最后总结得差不多了,后续如果我想起还有哪些判断浏览器运行环境终极方案遗漏的,会继续在这篇文章上补全,同时也希望各位朋友对文章里的要点进行补充或者提出自己的见解 。欢迎在下方进行评论或补充喔,喜欢的点个赞或收个藏,保证你在开发时用得上 。
关注公众号Uzero,更多前端小干货等着你喔!我是JowayYoung,喜欢分享前端技术和生活纪事,学习与生活不落下,每天进步一点点,与大家相伴成长
【详细判断浏览器运行环境】
推荐阅读
-
安克|[路演]安克创新董事长:我国为电子产品制造大国 产品供应较为充足
-
刘谦|过去8年的旧事再被翻出,刘谦再回应找力宏事件:当时根本没人相信我说的
-
老怪看盘|A股:“拐点”或在明后两天?为什么这样说?
-
[小米科技]再次打脸?小米还有4G新机要上线,K30+Note8Pro混合体
-
土耳其美女十分不解:这么昂贵的饮品,中国人为啥可以随便白送?
-
陈法蓉|曾是香港一代女神,却被富豪骗财骗色,如今52岁仍单身!
-
华为▲余承东14点突然发文,感谢花粉8年来,对华为不抛弃不放弃!
-
篮球殿堂|难怪福建输得这么难看!,大跌眼镜!自身膨胀+球员内讧
-
健康领路人|这几种低热量的零食大家知道吗?进来了解了解这些食物吧!震惊!
-
大河网|冒充女性专门网上交友 骗了钱就拉黑 这伙人被郑州警方抓了
-
四川农村大叔种的水果,一树能摘100多斤,这挂果率也太高了吧
-
@中国新闻社|大连:已下架封存凯洋海鲜公司涉疫产品
-
【购车小助理】这几台合资车颜值高动力强,有便宜的也有贵的,凭实力圈粉
-
青年|实拍: 老板上班时间发微信红包, 第一名抢红包员工直接被开除
-
漫雨王者迷|不怕“战术泄露”?本人作出回应,或是“烟雾弹”?,月光让AG公开训练
-
发型|半长不短是什么鬼发型?瘦脸时尚美美哒,竟然这么火!
-
美食东方哥|那是因为没有掌握几个技巧,香烧鸡公:很多人觉得烧鸡公太难做了
-
-
【】首批试点公布!我国正式开启国家草原自然公园建设
-