NavigatorUAData

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

实验性: 这是一项实验性技术
在将其用于生产之前,请仔细检查浏览器兼容性表格

备注: 此特性在 Web Worker 中可用。

用户代理客户端提示 APINavigatorUAData 接口返回有关用户的浏览器和操作系统的信息。

通过调用 Navigator.userAgentDataWorkerNavigator.userAgentData 返回此对象的实例。因此,该接口没有构造函数。

备注:术语高熵低熵指的是这些值揭示的有关浏览器的信息量。作为属性返回的值被视为低熵,并且不太可能识别用户。NavigatorUAData.getHighEntropyValues() 返回的值可能会揭示更多信息。因此,这些值是通过 Promise 检索的,从而使浏览器有时间请求用户权限或进行其他检查。

实例属性

返回一个包含浏览器名称和版本的品牌信息的数组。

如果用户代理在移动设备上运行,则返回 true

返回用户代理运行所在的平台品牌。

实例方法

返回一个 Promise,其兑现为包含用户代理返回的高熵值的字典对象。

一个序列化器,返回 NavigatorUAData 对象的低熵属性的 JSON 表示。

示例

获取浏览器品牌信息

以下示例将 NavigatorUAData.brands 的值打印到控制台。

js
console.log(navigator.userAgentData.brands);

返回高熵的信息

在以下示例中,使用 NavigatorUAData.getHighEntropyValues() 方法请求大量提示。当 promise 兑现时,此信息将打印到控制台。

js
navigator.userAgentData
  .getHighEntropyValues([
    "architecture",
    "model",
    "platform",
    "platformVersion",
    "fullVersionList",
  ])
  .then((ua) => {
    console.log(ua);
  });

规范

Specification
User-Agent Client Hints
# navigatoruadata

浏览器兼容性

BCD tables only load in the browser

参见