vue - JS 判断客户端是苹果 iOS 还是安卓 Android(封装好的方法直接调用)二种解决方案

介绍

有时候我们的项目,可能需要判断用户处于苹果还是安卓手机上,这时候就需要判断了。

其实,通过浏览器的 navigator.userAgent API 判断就行,下面提供两种方法自行选择。

解决方案 1

如下代码所示:

let u = navigator.userAgent;
let isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1;   //判断是否是 android终端
let isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);     //判断是否是 iOS终端
console.log('是否是Android:', isAndroid); //true,false
console.log('是否是iOS:', isIOS)

封装成方法,方便多处调用:

// 检查客户端
judgeClient() {
  let u = navigator.userAgent;
  let isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1;   //判断是否是 android终端
  let isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);     //判断是否是 iOS终端
  console.log('是否是Android:' + isAndroid); //true,false
  console.log('是否是iOS:' + isIOS);
  if(isAndroid){
    return 'Android';
  }else if(isIOS){
    return 'IOS';
  }else{
    return 'PC';
  }
},

解决方案 2

与前面的类似,但是写法不同:

if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
  console.log('isIOS');
} else if (/(Android)/i.test(navigator.userAgent)) {
  console.log('isAndroid');
} else {
  console.log('isPC');
}

封装成方法:

// 检查客户端
judgeClient() {
  let client = '';
  if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {  //判断iPhone|iPad|iPod|iOS
    client = 'iOS';
  } else if (/(Android)/i.test(navigator.userAgent)) {  //判断Android
    client = 'Android';
  } else {
    client = 'PC';
  }
  return client;
},

写在后面

其实两种方案都差不多,看你自己的选择了,哪个更适合。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

街尾杂货店&

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值