导航器:userAgent 属性

Navigator.userAgent只读属性返回当前浏览器的用户代理字符串。

注意:规范要求浏览器通过此字段提供尽可能少的信息。不要假设此属性的值在同一浏览器的未来版本中将保持不变。尽量不要使用它,或者只针对当前和过去版本的浏览器使用。新的浏览器可能会开始使用与旧浏览器相同或部分相同的 UA:您实际上无法保证浏览器代理确实是此属性所宣传的代理。

还要记住,浏览器用户可以根据需要更改此字段的值(UA 欺骗)。

基于检测用户代理字符串识别浏览器的做法 **不可靠** 且 **不推荐**,因为用户代理字符串可以由用户配置。例如

  • 在 Firefox 中,您可以更改 about:config 中的 general.useragent.override 首选项。一些 Firefox 扩展会这样做;但是,这只会更改发送的 HTTP 头部,并且会由 navigator.userAgent 返回。可能存在其他方法使用 JavaScript 代码识别浏览器。
  • Opera 6+ 允许用户通过菜单设置浏览器识别字符串。

一个字符串,指定浏览器在 HTTP 头部以及响应 Navigator 对象上的此方法和其他相关方法时提供的完整用户代理字符串。

用户代理字符串基于一种正式的结构,可以分解成多个信息片段。这些信息片段中的每一个都来自其他导航器属性,这些属性也可以由用户设置。有关用户代理字符串形式的更多信息,请参阅 User-agent HTTP 头部。

示例

js
alert(window.navigator.userAgent);
// alerts "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:124.0) Gecko/20100101 Firefox/124.0"

规范

规范
HTML 标准
# dom-navigator-useragent-dev

浏览器兼容性

BCD 表格只在浏览器中加载

另请参阅