js判断是否手机浏览器和微信内建浏览器(简单易懂)

javascript 在浏览器端判断是否手机浏览器的简单代码如下,也包括微信内建浏览器的判断。

  1. function isMobile() {
  2. var userAgent = navigator.userAgent;
  3. var mobileAgents = ["Android", "iPhone","MicroMessenger",
  4. "SymbianOS", "Windows Phone", "iPod"];
  5. var bMobile = false;
  6. for (var agent in mobileAgents) {
  7. if (userAgent.indexOf(agent) > 0) {
  8. bMobile = true;
  9. break;
  10. }
  11. }
  12. return bMobile;

仅仅判断是否微信内建浏览器,可以采用如下简单代码(首选代码):

  1. function isWeixin(){
  2. return navigator.userAgent.indexOf("MicroMessenger")>0;
  3. }

注意,很多人喜欢用正则表达式判断,其实这不可取,因为js对于在字符串中查找一个子字符串,用indexOf速度最快,如果用正则表达式,正则表达式引擎首先要分析模式表达式,然后再进行模式匹配,理论上是慢的,如下代码虽然能用但不可取:

  1. function isWeixin(){
  2. var ua = navigator.userAgent.toLowerCase();
  3. if(ua.match(/MicroMessenger/i)=="micromessenger") {
  4. return true;
  5. } else {
  6. return false;
  7. }
  8. }
文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/191
1 条评论
4k

发表评论

仅有一条评论

  1. 1321     Win 7 /    Chrome
    2020-04-18 16:38

!