js获取本机操作系统类型的两种方法


Posted in Javascript onDecember 19, 2015

关于机器用的操作系统,我们可以随便点击下鼠标就能够获取,但是如何使用javascript获取本机的操作系统类型呢,下面就通过一段代码示例简单介绍一下,希望能够给需要的朋友带来或多或少的帮助。

function GetOSInfo()
{ 
 var _pf=navigator.platform; 
 var appVer=navigator.userAgent; 
 if(_pf=="Win32" || _pf == "Windows") 
 { 
  if(appVer.indexOf("WOW64")>-1)
  { 
   _bit = "64位"; 
  }
  else
  { 
   _bit = "32位"; 
  } 
  if(appVer.indexOf("Windows NT 6.0") > -1 || appVer.indexOf("Windows Vista") > -1) 
  { 
   if(_bit=='64位' || appVer.indexOf("Windows Vista") > -1)
   { 
    return 'Windows_vista '+_bit; 
   }
   else
   { 
    return "Unknow1"; 
   } 
  }
  else if(appVer.indexOf("Windows NT 6.1") > -1 || appVer.indexOf("Windows 7") > -1) 
  { 
   if(_bit=='32位' || appVer.indexOf("Windows 7") > -1)
   { 
    return 'Windows_7 '+_bit; 
   }
   else
   { 
    return "Unknow"; 
   } 
  }
  else
  { 
   try
   { 
    var _winName = Array('2000','XP','2003'); 
    var _ntNum = appVer.match(/Windows NT 5.\d/i).toString(); 
    return 'Windows_' + _winName[_ntNum.replace(/Windows NT 5.(\d)/i,"$1")]+" "+_bit; 
   }
   catch(e)
   {
    return 'Windows';
   } 
  } 
 }
 else if(_pf == "Mac68K" || _pf == "MacPPC" || _pf == "Macintosh") 
 { 
  return "Mac"; 
 }
 else if(_pf == "X11") 
 { 
  return "Unix"; 
 }
 else if(String(_pf).indexOf("Linux") > -1) 
 { 
  return "Linux"; 
 }
 else
 { 
  return "Unknow"; 
 } 
}

第二种方法:

<script type="text/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 "Mac"; 
  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 "Win2000"; 
    var isWinXP = sUserAgent.indexOf("Windows NT 5.1") > -1 || sUserAgent.indexOf("Windows XP") > -1; 
    if (isWinXP) return "WinXP"; 
    var isWin2003 = sUserAgent.indexOf("Windows NT 5.2") > -1 || sUserAgent.indexOf("Windows 2003") > -1; 
    if (isWin2003) return "Win2003"; 
    var isWin2003 = sUserAgent.indexOf("Windows NT 6.0") > -1 || sUserAgent.indexOf("Windows Vista") > -1; 
    if (isWin2003) return "WinVista"; 
    var isWin2003 = sUserAgent.indexOf("Windows NT 6.1") > -1 || sUserAgent.indexOf("Windows 7") > -1; 
    if (isWin2003) return "Win7"; 
  } 
  return "None"; 
} 
function locationHref(e){
 switch(e){
 case 'Mac':
 window.location.href='http://www.baidu.com';
 break;
 case 'Unix':
 window.location.href='http://tieba.baidu.com';
 break;
 case 'Linux':
 window.location.href='http://map.baidu.com';
 break;
 case 'Win2000':
 window.location.href='http://mp3.baidu.com';
 break;
 case 'WinXP':
 window.location.href='http://baike.baidu.com';
 break;
 case 'Win2003':
 window.location.href='http://zhidao.baidu.com';
 break;
 case 'WinVista':
 window.location.href='http://hi.baidu.com';
 break;
 case 'Win7':
 window.location.href='http://video.baidu.com';
 break;
 default :
 window.location.href='http://www.hao123.com/';
 break;
 }
 }
</script><script type="text/javascript">var kk=detectOS();alert(kk);/*locationHref(kk);*/</script>

以上就是js获取本机操作系统类型的方法,希望大家有所收获。

Javascript 相关文章推荐
javascript 复杂的嵌套环境中输出单引号和双引号
May 26 Javascript
javascript 自定义事件初探
Aug 21 Javascript
js 格式化时间日期函数小结
Mar 20 Javascript
读jQuery之六 缓存数据功能介绍
Jun 21 Javascript
JavaScript设置IFrame高度自适应(兼容各主流浏览器)
Jun 05 Javascript
Javascript中arguments和arguments.callee的区别浅析
Apr 24 Javascript
JS实现的数字格式化功能示例
Feb 10 Javascript
js中less常用的方法小结
Aug 09 Javascript
浅谈React中的元素、组件、实例和节点
Feb 27 Javascript
从零开始搭建webpack+react开发环境的详细步骤
May 18 Javascript
JS typeof fn === 'function' &amp;&amp; fn()详解
Aug 22 Javascript
JS轻量级函数式编程实现XDM三
Jun 16 Javascript
javascript精确统计网站访问量实例代码
Dec 19 #Javascript
js实现图片轮播效果
Dec 19 #Javascript
js实现图片上传并正常显示
Dec 19 #Javascript
thinkphp实现无限分类(使用递归)
Dec 19 #Javascript
15个常用的jquery代码片段
Dec 19 #Javascript
js实现滚动条滚动到页面底部继续加载
Dec 19 #Javascript
jQuery对html元素的取值与赋值实例详解
Dec 18 #Javascript
You might like
Windows PHP5和Apache的安装与配置
2009/06/08 PHP
PHP中isset与array_key_exists的区别实例分析
2015/06/02 PHP
PHP加密技术的简单实现
2016/09/04 PHP
PHP实现的登录,注册及密码修改功能分析
2016/11/25 PHP
PHP简单读取xml文件的方法示例
2017/04/20 PHP
再谈Yii Framework框架中的事件event原理与应用
2020/04/07 PHP
javascript数组的扩展实现代码集合
2008/06/01 Javascript
javascript客户端解决方案 缓存提供程序
2010/07/14 Javascript
表单的焦点顺序tabindex和对应enter键提交
2013/01/04 Javascript
jQuery类选择器用法实例
2014/12/23 Javascript
Javascript中实现String.startsWith和endsWith方法
2015/06/10 Javascript
JS+CSS实现DIV层的展开、收缩效果
2016/01/28 Javascript
jQuery实现两列等高并自适应高度
2016/12/22 Javascript
js正则表达式惰性匹配和贪婪匹配用法分析
2016/12/26 Javascript
微信小程序 template模板详解及实例
2017/02/21 Javascript
vue2组件实现懒加载浅析
2017/03/29 Javascript
Angular 向组件传递模板的两种方法
2018/02/23 Javascript
Angular 4.x+Ionic3踩坑之Ionic 3.x界面传值详解
2018/03/13 Javascript
js数据类型检测总结
2018/08/05 Javascript
mpvue中使用flyjs全局拦截的实现代码
2018/09/13 Javascript
详解三种方式解决vue中v-html元素中标签样式
2018/11/22 Javascript
微信小程序仿知乎实现评论留言功能
2018/11/28 Javascript
iview form清除校验状态的实现
2019/09/19 Javascript
python发送多人邮件没有展示收件人问题的解决方法
2019/06/21 Python
简单的命令查看安装的python版本号
2020/08/28 Python
python用Tkinter做自己的中文代码编辑器
2020/09/07 Python
学习决心书范文
2014/03/11 职场文书
工伤事故处理协议书怎么写
2014/10/15 职场文书
群众路线自查自纠工作情况报告
2014/10/28 职场文书
2015年售票员工作总结
2015/04/29 职场文书
人事任命书范本
2015/09/21 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
2019暑假学生安全口号
2019/06/27 职场文书
2019年圣诞节祝福语集锦
2019/12/25 职场文书
Nginx反向代理配置的全过程记录
2021/06/22 Servers
vue中this.$http.post()跨域和请求参数丢失的解决
2022/04/08 Vue.js