You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

navigator.userAgent检测Chrome版本不准确,寻求解决方法

解决Chrome浏览器版本检测不准确的问题

Chrome从110版本左右开始,为增强隐私保护、减少浏览器指纹识别,会在navigator.userAgent中模糊显示具体小版本号,仅保留主版本段(比如你遇到的114.0.0.0),这是官方刻意的行为,因此依赖navigator.userAgent获取完整版本的方式已不可靠。

推荐以下两种解决方案:

1. 使用标准API navigator.userAgentData(优先推荐)

这是W3C标准化的用户代理数据获取API,能获取Chrome的完整版本号,兼容性覆盖Chrome 90及以上版本:

if ('userAgentData' in navigator) {
  navigator.userAgentData.getHighEntropyValues(['fullVersion'])
    .then(data => {
      const fullChromeVersion = data.fullVersion;
      console.log('Chrome完整版本:', fullChromeVersion);
      // 此处会输出如114.0.5735.134的准确版本
    })
    .catch(err => {
      console.error('获取版本失败:', err);
    });
}

注意:getHighEntropyValues需异步调用,部分浏览器可能限制该API的调用频率,避免滥用。

2. 针对Chrome扩展环境的特殊方式(仅适用于扩展开发)

如果你在Chrome扩展中开发,可通过扩展manifest信息间接获取(仅拓展自身版本,浏览器版本仍建议用userAgentData):

// 仅在Chrome扩展内有效
const extensionVersion = chrome.runtime.getManifest().version;

注意事项

  • 不要尝试解析navigator.appVersion或其他非标准属性,这些同样可能被Chrome模糊处理;
  • 避免过度依赖浏览器版本做功能判断,优先使用特性检测(比如用if ('someFeature' in window)判断功能是否支持,而非版本号)。

内容的提问来源于stack exchange,提问作者vanminhquangtri

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 03:48:15