如何使用JS判断操作系统为32位还是64位版本

JavaScript07

如何使用JS判断操作系统为32位还是64位版本,第1张

方法:

相关示例代码如下:

function getCPU()

{varagent=navigator.userAgent.toLowerCase()

if(agent.indexOf("win64")>=0||agent.indexOf("wow64")>=0) return "x64"

return navigator.cpuClass}

判断IOS系统的版本号用到了JS中的userAgent,JS代码如下:

navigator.userAgent.toLowerCase()

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

取出协议头之后,我们可以使用正则表达式进行获取

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。

var str= navigator.userAgent.toLowerCase() 

var ver=str.match(/cpu iphone os (\d+)\_(\d+) like/)

match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。

参数

searchvalue  规定要检索的字符串值。

regexp          规定要匹配的模式的 RegExp 对象。如果该参数不是 RegExp 对象,则需要首先把它传递给 RegExp 构造函数,将其转换为 RegExp 对象。

判断IOS版本号代码:

<html>

<meta charset="UTF-8"/>

<body>

<script type="text/javascript">

var str= navigator.userAgent.toLowerCase() 

var ver=str.match(/cpu iphone os (.*?) like mac os/)

if(!ver){

alert("请在Ios系统中打开")

}else{

alert("你当前的Ios系统版本为:"+ver[1].replace(/_/g,"."))

}

</script>

</body>

</html>

注:replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

参数:

regexp/substr       规定子字符串或要替换的模式的 RegExp 对象。请注意,如果该值是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp 对象

replacement         一个字符串值。规定了替换文本或生成替换文本的函数。

上面代码中的/g代表的含义是:如果regexp 具有全局标志 g,那么 replace() 方法将替换所有匹配的子串。否则,它只替换第一个匹配子串,上述代码将HTTP协议头中的"9_3_2"转为"9.3.2"

这个恐怕不行。web判断系统类型是通常通过浏览器UA来判断,而安卓浏览器的UA一般不会细致到第三方安卓OS的名称,一般只会出现android以及设备型号名称,比如华为手机一般在UA会显示HUAWEIEDISON。