Navigator: userAgent 屬性

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

Navigator.userAgent 只讀屬性返回當前瀏覽器的使用者代理字串。

注意: 規範要求瀏覽器在此欄位中提供儘可能少的資訊。切勿假定此屬性的值在同一瀏覽器的未來版本中保持不變。儘量不要使用它,或者僅用於瀏覽器當前和過去版本。新瀏覽器可能會開始使用與舊瀏覽器相同的 UA 或部分 UA:您真的無法保證瀏覽器代理確實是此屬性所宣傳的那個。

同時也要記住,瀏覽器使用者可以根據自己的意願更改此欄位的值(UA 欺騙)。

基於檢測使用者代理字串的瀏覽器標識是不可靠的,並且不推薦這樣做,因為使用者代理字串是使用者可配置的。例如:

  • 在 Firefox 中,您可以在 about:config 中更改 general.useragent.override 首選項。一些 Firefox 擴充套件會這樣做;然而,這隻會更改傳送的 HTTP 標頭以及 navigator.userAgent 返回的值。可能還有其他方法可以利用 JavaScript 程式碼來識別瀏覽器。
  • Opera 6+ 允許使用者透過選單設定瀏覽器標識字串。

一個字串,指定瀏覽器在 HTTP 標頭中以及響應此物件和 Navigator 物件上的其他相關方法時提供的完整使用者代理字串。

使用者代理字串是基於正式結構構建的,可以分解為多個資訊片段。這些資訊片段都來自其他可由使用者設定的 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

瀏覽器相容性

另見