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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS辨别访问浏览器判断是android还是ios系统相关的知识,希望对你有一定的参考价值。

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

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

使用方法:

检测浏览器语言:

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

4、判断pc还是移动端:

参考技术A

项目中需要扫描二维码之后自动分辨出是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 ,该方法在转基本类型时调用优先级最高。

参考技术B var ua = navigator.userAgent.toLowerCase();
if (/iphone|ipad|ipod/.test(ua))
//alert("iphone");
else if (/android/.test(ua))
alert("android");
本回答被提问者和网友采纳
参考技术C navigator.userAgent

JS判断是IOS还是Android

var u = navigator.userAgent, app = navigator.appVersion;
var isAndroid = u.indexOf(‘Android‘) > -1 || u.indexOf(‘Linux‘) > -1; //android终端或者uc浏览器
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
alert(‘是否是Android:‘+isAndroid);
alert(‘是否是iOS:‘+isiOS);

以上是关于JS辨别访问浏览器判断是android还是ios系统的主要内容,如果未能解决你的问题,请参考以下文章

js判断客户端访问是安卓还是ios

JS判断是IOS还是Android

JS判断是IOS还是Android

js判断手机系统是iOS还是android

js快速判断设备终端是ios还是android

根据userAgent判断移动端是iOS 还是android?