当前位置: 首页 > 编程笔记 >

js获取客户端操作系统类型的方法【测试可用】

赫连照
2023-03-14
本文向大家介绍js获取客户端操作系统类型的方法【测试可用】,包括了js获取客户端操作系统类型的方法【测试可用】的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了js获取客户端操作系统类型的方法。分享给大家供大家参考,具体如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>js判断客户端操作系统类型</title>
</head>
<body>
<script language="javascript">
function detectOS() {
  var sUserAgent = navigator.userAgent;
  var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");
  var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC") || (navigator.platform == "Macintosh") || (navigator.platform == "MacIntel");
  if (isMac) return "MacOS";
  var isUnix = (navigator.platform == "X11") && !isWin && !isMac;
  if (isUnix) return "Unix";
  var isLinux = (String(navigator.platform).indexOf("Linux") > -1);
  if (isLinux) return "Linux";
  if (isWin) {
    var isWin2K = sUserAgent.indexOf("Windows NT 5.0") > -1 || sUserAgent.indexOf("Windows 2000") > -1;
    if (isWin2K) return "Windows2000";
    var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1;
    if (isWinXP) return "WindowsXP";
    var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1;
    if (isWin2003) return "Windows2003";
    var isWinVista= sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1;
    if (isWinVista) return "Windows Vista";
    var isWin7 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1;
    if (isWin7) return "Windows7";
  }
  return "other";
}
document.writeln("您的操作系统是:" + detectOS());
</script>
</body>
</html>

PS:顺便一提的是本站在线工具的IP归属地查询工具中也使用了上述方法来判断进行用户操作系统类型判断。如下:

IP地址归属地在线查询工具:
http://tools.jb51.net/aideddesign/ipcha

顺便再为大家推荐几款比较实用的JS在线格式化工具,相信在以后的开发中会经常用到:

C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json

在线JavaScript代码美化、格式化工具:
http://tools.jb51.net/code/js

JavaScript代码美化/压缩/格式化/加密工具:
http://tools.jb51.net/code/jscompress

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

更多关于JavaScript相关内容可查看本站专题:《JavaScript中ajax操作技巧总结》、《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript动画特效与技巧汇总》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

 类似资料:
  • 主要内容:批量操作系统,多程序操作系统,多处理操作系统,实时操作系统当前场景中存在许多类型的操作系统: 批量操作系统 在20世纪70年代,批处理非常受欢迎。 作业()分批执行。 人们习惯于拥有一台称为大型机的计算机。 在批量操作系统中,可以访问多个人; 他们将各自的工作提交给系统执行。 系统根据先到先得的原则将所有工作放入队列中,然后逐个执行工作。 用户在所有作业执行时收集各自的输出。 批处理操作系统的缺点 1. 饥饿 批处理经常遭受饥饿。 如果批次中存在五个作业

  • 有80%计算机网络的内容。自我介绍,问项目,问接口自动化,问ui自动化,问为什么离职,问微信发红包测试用例,网页打开慢的原因有哪些,cookie,百度搜索页面后浏览器做了哪些工作,b/s架构和c/s架构的区别等等[捂脸]面了半小时,一挂视频立刻给我淘汰的通知。 果然还是要就着面经准备,过程中也收获到一些新知,面试命中率也很高。继续面,再痛苦也要继续!#富途##测试##社招#

  • 本文向大家介绍JS判断浏览器类型与操作系统的方法分析,包括了JS判断浏览器类型与操作系统的方法分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS判断浏览器类型与操作系统的方法。分享给大家供大家参考,具体如下: navigator.userAgent : userAgent 属性是一个只读的字符串,声明了浏览器用于 HTTP 请求的用户代理头的值。 navigator.platform

  • 问题内容: 我还无法找出如何使用PHP进行操作,并想尝试找出答案。 我注意到他们列出了,其中提供了有关浏览器的大量信息。他们是从中获取操作系统信息还是从别的东西获取操作系统信息?有没有我可以用来获取用户操作系统的API? 我知道他们是如何获得浏览器和IP的,但无法弄清操作系统部分! 问题答案: 下面的代码可以单独说明如何显示某人正在使用哪个操作系统。 它的作用是嗅探您的核心操作系统模型,例如作为我

  • 本文向大家介绍Git客户端TortoiseGit(Windows系统)的使用方法,包括了Git客户端TortoiseGit(Windows系统)的使用方法的使用技巧和注意事项,需要的朋友参考一下 本文环境: 操作系统:Windows XP SP3 Git客户端:TortoiseGit-1.8.8.0-32bit 一、安装Git客户端 全部安装均采用默认! 1. 安装支撑软件 msysgit: ht

  • 本文向大家介绍python获取各操作系统硬件信息的方法,包括了python获取各操作系统硬件信息的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了python获取各操作系统硬件信息的方法。分享给大家供大家参考。具体如下: 1. windows 使用WMI: (WMI官网地址:http://pypi.python.org/pypi/WMI 或 点击此处本站下载。) 运行结果如下: 2.

  • 本文向大家介绍.NET获取客户端的操作系统版本、浏览器版本和IP地址,包括了.NET获取客户端的操作系统版本、浏览器版本和IP地址的使用技巧和注意事项,需要的朋友参考一下 我们在使用.NET做网站的时候,很多情况下需要需要知道客户端的操作系统版本和浏览器版本,怎样获取客户端的操作系统和浏览器版本呢?我们可以通过分析UserAgent来获取。 .NET 获取客户端的操作系统 请看下面的代码,我们首先

  • 问题内容: 我想用JUnit测试以下方法: 坦白说,我想出的唯一一件事就是基本上将相同的逻辑复制到测试中。当然,这可以防止方法被意外破坏,但是听起来有点违反直觉。 有什么更好的方法来测试此方法? 问题答案: 在单元测试中,您可以更改属性的值: 然后,您可以测试/调用您的方法以使用断言检查其返回的内容。 为了更容易设置System属性并在测试完成时取消设置该属性(从而促进测试隔离,自我约束),可以使