JS-环境判断 小程序、公众号、浏览器、APP、安卓、IOS

作者: zengde 分类: 笔记 发布时间: 2023-09-12 10:37
const ua = navigator.userAgent.toLowerCase();
 
//微信小程序、微信公众号H5、浏览器、app环境
getENVIR: () => {
  const isWeixin = ua.indexOf('micromessenger') !== -1;
  const isInApp = /(^|;\s)app\//.test(ua);
  if (isWeixin) {
    if ((window as any).__wxjs_environment === 'miniprogram') {
      return 'wxapp';
    } else {
      return 'wxh5';
    }
  } else {
    if (!isInApp) {
      return 'browser';
    } else {
      return 'app';
    }
  }
},
 
 
//终端判断:是否是IOS
 
checkIfIOS: () => {
  return ua.match(/(iphone|ipod|ipad);?/i);
},
 
//终端判断:是否是Android
 
checkIfAndroid: () => {
  return ua.match(/android|adr/i);
},

各小程序JSSDK

// 微信小程序 
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
// 字节跳动(抖音、头条) 
<script type="text/javascript" src="https://s3.pstatp.com/toutiao/tmajssdk/jssdk-1.0.1.js"></script>
// 支付宝小程序 
<script type="text/javascript" src="https://appx/web-view.min.js"></script>

微信小程序环境判断

通过UA

const ua = window.navigator.userAgent.toLowerCase();
  if (ua.indexOf('micromessenger') == -1) {
    console.log("不在微信或者小程序中")
  } else {
    wx.miniProgram.getEnv((res) => {
      if (res.miniprogram) {
        $("#entry-live-room").show();
        console.log("在小程序中")
      } else {
        $("#entry-live-room-app").show();
        console.log("在微信中")
      }
    });
  }

字节跳动(抖音、头条)小程序环境判断

判断页面环境是否为字节小程序

navigator.userAgent.toLowerCase().includes('toutiaomicroapp') 来判断页面环境是否为字节小程序。

小程序登录验证时,我怎么能判断是来自 头条 的还是抖音的?

百度小程序环境判断

h5页面如何判断是不是在百度小程序里面?

$(document).ready(function () {
  var u = navigator.userAgent;
  var isbaidu = u.indexOf('baiduboxapp') > -1; //百度小程序
  if (!isbaidu) {
    //此处判断成功,非百度小程序环境
  }
});

参考:https://xiaodongxier.com/228.html