Navigator
[TOC]
索引
Navigator
属性
浏览器标识:
- navigator.userAgent:
string
,返回浏览器的完整用户代理字符串(包含浏览器名称、版本、操作系统等信息)。
平台与操作系统:
- navigator.platform:
string
,返回操作系统平台(如"Win32"
、"MacIntel"
、"Linux x86_64"
)。 - navigator.oscpu:
string
,返回操作系统详细版本(仅 Firefox 支持)。 - navigator.language:
string
,返回浏览器首选语言(如"zh-CN"
)。 - navigator.languages:
string
,返回用户偏好语言列表(按优先级排序)。
硬件与设备:
- navigator.hardwareConcurrency:
number
,返回 CPU 核心数(用于优化多线程任务)。 - navigator.deviceMemory:
number
,返回设备内存大小(以 GB 为单位,如8
,需 HTTPS)。 - navigator.maxTouchPoints:
number
,返回设备支持的最大触控点数(检测触屏设备)。
网络与连接:
- navigator.onLine:
boolean
,返回布尔值,表示浏览器是否联网。 - navigator.connection:
NetworkInformation
,返回网络连接信息对象 NetworkInformation(如类型、速度、流量节省模式等,需 HTTPS)。
功能检测与权限:
- navigator.cookieEnabled:
boolean
,返回布尔值,表示是否启用 Cookie。 - navigator.permissions:
Permissions
,提供权限查询接口的Permissions
对象(如地理位置、摄像头权限)。
示例:
userAgent
jsconsole.log(navigator.userAgent); // 输出示例:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36
connection
jsconst connection = navigator.connection; console.log(connection.effectiveType); // "4g", "3g", "2g", "slow-2g" console.log(connection.downlink); // 下载速度(Mbps)
permissions
jsnavigator.permissions.query({ name: 'geolocation' }) .then(permissionStatus => { console.log(permissionStatus.state); // "granted", "denied", "prompt" });