下面给你 最全、最实用的 Navigator.userAgent 获取浏览器信息指南,含示例与 UA 识别技巧。


🌐 Navigator.userAgent:获取设备浏览器信息

在浏览器中可以通过 navigator.userAgent 读取当前设备的浏览器 UA(User-Agent)字符串。

这是前端最常用的环境识别方式之一。


⭐ 一、最基本用法

console.log(navigator.userAgent);

输出一般是类似这样的字符串:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) 
AppleWebKit/537.36 (KHTML, like Gecko) 
Chrome/120.0.0.0 Safari/537.36

它包含:

  • 系统类型(Windows / Mac / Linux / Android / iOS)
  • 浏览器引擎(WebKit / Gecko)
  • 浏览器类型(Chrome / Safari / Firefox / Edge)
  • CPU 架构(x64 / ARM)
  • 版本号

⭐ 二、使用 UA 判断系统类型示例

✔ 判断是否是移动端

const isMobile = /Android|iPhone|iPad|iPod/i.test(navigator.userAgent);

✔ 判断是否是 Android

const isAndroid = /Android/i.test(navigator.userAgent);

✔ 判断是否是 iOS

const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent);

✔ 判断是否是 Windows

const isWindows = /Windows NT/i.test(navigator.userAgent);


⭐ 三、判断浏览器类型

✔ Chrome

const isChrome = /Chrome\/\d+/.test(navigator.userAgent) && !/Edg/.test(navigator.userAgent);

✔ Edge(新内核)

const isEdge = /Edg\/\d+/.test(navigator.userAgent);

✔ Firefox

const isFirefox = /Firefox\/\d+/.test(navigator.userAgent);

✔ Safari(iOS 或 macOS)

Safari 没有 “Chrome” 或 “Edge” 标记:

const isSafari = /Safari/.test(navigator.userAgent) && !/Chrome|Edg|OPR/.test(navigator.userAgent);


⭐ 四、UA 实际示例(常用设备)

📱 iPhone 14 Safari

Mozilla/5.0 (iPhone; CPU iPhone OS 17_2 like Mac OS X) 
AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Mobile/15E148 Safari/604.1

📱 Android Chrome

Mozilla/5.0 (Linux; Android 13; Pixel 6) 
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Mobile Safari/537.36

💻 Windows 10 + Chrome

Mozilla/5.0 (Windows NT 10.0; Win64; x64) 
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36

💻 macOS Chrome

Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) 
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36

👉 你现在的 UA 正是这一类:macOS 10.15.7 + Chrome


⭐ 五、注意:userAgent 已逐步被废弃(但仍可用)

Chrome / Safari / Firefox 都在逐步减少 UA 的详细度,为了隐私安全。
替代方案:Navigator User-Agent Client Hints(UA-CH)

获取方式:

navigator.userAgentData.getHighEntropyValues([
    "platform", "platformVersion", "uaFullVersion", "architecture", "model"
]).then(console.log);

兼容性不如 userAgent,很多旧设备和旧浏览器不支持。