当前位置:   article > 正文

如何用js判断设备类型?

js判断设备类型

userAgent是HTTP请求中的用户标识,是能够代表客户端类型的字符串,比如浏览器类型 操作系统等信息。

  1. console.log(navigator)
  2. console.log(navigator.userAgent);

 判断设备是PC端还是移动端: false PC端 | true 移动端

  1. //判断设备是PC端还是移动端: false PC端 | true 移动端
  2. const isMobile = () => {
  3. return !!navigator.userAgent.match(/(iPhone|iPod|Android|ios|iOS|WebOS|Windows Phone|Phone)/i);
  4. }

判断设备时安卓还是IOS

  1. // 判断设备时安卓还是IOS
  2. const isAndroid = () => {
  3. return /android/i.test(navigator.userAgent.toLowerCase());
  4. };
  5. const isIOS = () => {
  6. let reg = /iPhone|iPad|iOS|Macintosh/i;
  7. return reg.test(navigator.userAgent.toLowerCase());
  8. };

判断浏览器类型及其版本

  1. // 获取浏览器类型及其版本
  2. const getExplorerInfo = () => {
  3. let t = navigator.userAgent.toLowerCase();
  4. return 0 <= t.indexOf("mise")
  5. ? {
  6. // IE<11
  7. type: "IE",
  8. version: Number(t.match(/mise ([\d]+)/)[1]),
  9. }
  10. : !!t.match(/trident\/.+?rv:(([\d.]+))/)
  11. ? {
  12. // IE 11
  13. type: "IE",
  14. version: 11,
  15. }
  16. : 0 <= t.indexOf("edge")
  17. ? {
  18. type: "Edge",
  19. version: Number(t.match(/edge\/([\d]+)/)[1]),
  20. }
  21. : 0 <= t.indexOf("firefox")
  22. ? {
  23. type: "Firefox",
  24. version: Number(t.match(/firefox\/([\d]+)/)[1]),
  25. }
  26. : 0 <= t.indexOf("chrome")
  27. ? {
  28. type: "Chrome",
  29. version: Number(t.match(/chrome\/([\d/]+)/)[1]),
  30. }
  31. : 0 <= t.indexOf("opera")
  32. ? {
  33. type: "Safari",
  34. version: Number(t.match(/version\/([\d]+)/)[1]),
  35. }
  36. : {
  37. type: t,
  38. version: -1,
  39. };
  40. }

测试:打开控制台(检查自己的浏览器)

  1. console.log(isMobile());//false电脑
  2. if (isMobile() == false) {
  3. alert("PC端");
  4. alert("浏览器类型:" + getExplorerInfo().type + "," + "版本号:" + getExplorerInfo().version)
  5. console.log("PC端", getExplorerInfo());//浏览器类型
  6. } else {
  7. alert("移动端")
  8. console.log("移动端");
  9. if (isAndroid() !== false) {
  10. alert("安卓")
  11. console.log("安卓");
  12. } else {
  13. console.log("不是安卓");
  14. }
  15. if (isIOS() !== false) {
  16. alert("IOS")
  17. console.log("IOS");
  18. } else {
  19. console.log("不是IOS");
  20. }
  21. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/321084
推荐阅读
相关标签
  

闽ICP备14008679号