移动端设备类型检测方法

2023-12-07  本文已影响0人  沃德麻鸭

      在我们平时做app开发的过程中,经常会遇到安卓和iOS设备不兼容的问题,有的时候就需要应对两种设备分别来做调整,这时就需要获取到设备的类型,在这里我们用到了navigator.userAgent方法。

一、navigator.userAgent语法

    userAgent 属性是一个只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值。

二、navigator还有其它的属性如下:

1.浏览器代号:  navigator.appCodeName

2.浏览器名称: navigator.appName

3.浏览器版本: navigator.appVersion

4.启用Cookies: navigator.cookieEnabled

5.硬件平台: navigator.platform

6.用户代理: navigator.userAgent

7.用户代理语言: navigator.language

三、应用事例

与正则表达式一起使用,判定设备类型

if(/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent){ return "IOS" }
else if(/(Android)/i.test(navigator.userAgent){ return "Android" }
else{ return "unknown }

也可以使用其他判定字符串中是否包含关键字的方法例如:

1.  navigator.userAgent.Indexof(iPhone ||iPad ||iPod|| iOS)在一个字符串中查找关键词的索引,如果大于等于0则证明包含

2.  navigator.userAgent.match(/(iPhone|iPad|iPod|iOS/),返回的是一个数组,数组的第一项则是匹配到的设备类型结果,第二项是匹配到的关键词索引index属性,如果返回是null则说明不包含这几项设备类型

3.  navigator.userAgent.search(/(iPhone|iPad|iPod|iOS/)或者navigator.userAgent.search(iPhone ||iPad ||iPod|| iOS),这个方法结合和以上两种使用方法,参数既可以直接用关键词字符串也可以用正则表达式,返回值都是索引值,判定大于等于0则包含

四、同理,我们可以通过返回值来判定当前浏览器内核来区分浏览器

上一篇下一篇

猜你喜欢

热点阅读