JS辨别访问浏览器判断是android还是ios系统

 我来答
加百列windy
高粉答主

推荐于2019-08-18 · 每个回答都超有意思的
知道小有建树答主
回答量:2074
采纳率:100%
帮助的人:96.3万
展开全部

1、通过判断浏览器的userAgent,用正则来判断是否是ios和Android客户端。代码如下:

2、检查是否是移动端(Mobile)、ipad、iphone、微信、QQ等:

使用方法:

检测浏览器语言:

3、判断iPhone|iPad|iPod|iOS|Android客户端:

4、判断pc还是移动端:

Storm代理
2023-07-25 广告
StormProxies是一家可靠的代理服务提供商,提供原生IP(住宅原生IP)和高匿名代理服务。以下是关于StormProxies的原生IP服务的一些信息:1. 住宅原生IP:StormProxies提供的住宅原生IP是指从真实的家庭或企... 点击进入详情页
本回答由Storm代理提供
ccxxzz285
高粉答主

推荐于2019-10-11 · 繁杂信息太多,你要学会辨别
知道小有建树答主
回答量:259
采纳率:100%
帮助的人:18.2万
展开全部

项目中需要扫描二维码之后自动分辨出是android还是ios系统,针对于不同的系统进行不同的下载。

智能机浏览器版本信息:

var browser = {

versions: function() {

var u = navigator.userAgent, app = navigator.appVersion;

return {//移动终端浏览器版本信息

trident: u.indexOf('Trident') > -1, //IE内核

presto: u.indexOf('Presto') > -1, //opera内核

webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核

gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核

mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), //是否为移动终端

ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端

android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或者uc浏览器

iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器

iPad: u.indexOf('iPad') > -1, //是否iPad

webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部

};

}(),

language: (navigator.browserLanguage || navigator.language).toLowerCase()

}

扩展资料:

常用的js常识:

1、内置类型

JS 中分为七种内置类型,七种内置类型又分为两大类型:基本类型和对象(Object)。

基本类型有六种: null, undefined, boolean, number, string, symbol。

其中 JS 的数字类型是浮点类型的,没有整型javas。并且浮点类型基于 IEEE 754标准实现,在使用中会遇到某些 Bug。

NaN 也属于 number 类型,并且 NaN 不等于自身。

对于基本类型来说,如果使用字面量的方式,那么这个变量只是个字面量,只有在必要的时候才会转换为对应的类型。对象(Object)是引用类型,在使用过程中会遇到浅拷贝和深拷贝的问题。

2、Typeof

typeof 对于基本类型,除了 null 都可以显示正确的类型

typeof 对于对象,除了函数都会显示 object

对于 null 来说,虽然它是基本类型,但是会显示 object,这是一个存在很久了的 Bug

PS:出现这种情况的原因是因为在 JS 的最初版本中,使用的是 32 位系统,为了性能考虑使用低位存储了变量的类型信息, 000 开头代表是对象,然而 null 表示为全零,所以将它错误的判断为 object 。虽然现在的内部类型判断代码已经改变了,但是对于这个 Bug 却是一直流传下来。

如果我们想获得一个变量的正确类型,可以通过 Object.prototype.toString.call(xx)。这样我们就可以获得类似 [objectType] 的字符串。

3、类型转换

1)转Boolean

在条件判断时,除了 undefined, null, false, NaN, '', 0, -0,其他所有值都转为 true,包括所有对象。

2)对象转基本类型

对象在转换基本类型时,首先会调用 valueOf 然后调用 toString。并且这两个方法你是可以重写的。

当然你也可以重写 Symbol.toPrimitive ,该方法在转基本类型时调用优先级最高。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
QQMSD8
推荐于2018-02-26 · 知道合伙人软件行家
QQMSD8
知道合伙人软件行家
采纳数:6788 获赞数:13239
没有做不到,只有想不到,帮助别人的同时也是对自己的提升

向TA提问 私信TA
展开全部
var ua = navigator.userAgent.toLowerCase();
if (/iphone|ipad|ipod/.test(ua)) {
//alert("iphone");
} else if (/android/.test(ua)) {
alert("android");
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1fdeaff
2015-01-12 · TA获得超过263个赞
知道小有建树答主
回答量:507
采纳率:0%
帮助的人:423万
展开全部
navigator.userAgent
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式