1. 8.9 システム状態および性能
      1. 8.9.1 Navigatorオブジェクト
        1. 8.9.1.1 クライアントの識別
        2. 8.9.1.2 言語の好み
        3. 8.9.1.3 カスタムスキームハンドラー:registerProtocolHandler()メソッド
        4. 8.9.1.4 クッキー
        5. 8.9.1.5 プラグイン

8.9 システム状態および性能

8.9.1 Navigatorオブジェクト

Navigator

Support in all current engines.

Firefox1+Safari1+Chrome1+
Opera3+Edge79+
Edge (Legacy)12+Internet Explorer4+
Firefox Android4+Safari iOS1+Chrome Android18+WebView Android1+Samsung Internet1.0+Opera Android10.1+
8.9.1.1 クライアントの識別

特定の場合において、業界全体の最善の努力にもかかわらず、ウェブブラウザーは、ウェブ著者が回避することを余儀なくされるバグや限界がある。

このセクションは、スクリプトから使用中のユーザーエージェントの種類を判断するために使用できる属性の集合を定義し、順番にこれらの問題を回避する。

クライアント検出は常に既知の現行バージョンの検出に限定されるべきである。将来のバージョンおよび未知のバージョンは、常に完全に準拠するよう仮定されるべきである。

self . navigator . appCodeName

NavigatorID/appCodeName

Support in all current engines.

FirefoxYesSafariYesChromeYes
OperaYesEdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

文字列"Mozilla"を返す。

self . navigator . appName

NavigatorID/appName

Support in all current engines.

FirefoxYesSafariYesChromeYes
OperaYesEdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

文字列"Netscape"を返す。

self . navigator . appVersion

NavigatorID/appVersion

Support in all current engines.

FirefoxYesSafariYesChromeYes
OperaYesEdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

ブラウザーのバージョンを返す。

self . navigator . platform

NavigatorID/platform

Support in all current engines.

FirefoxYesSafariYesChromeYes
OperaYesEdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

プラットフォームの名前を返す。

self . navigator . product

NavigatorID/product

Support in all current engines.

FirefoxYesSafariYesChromeYes
OperaYesEdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

文字列"Gecko"を返す。

window . navigator . productSub

Navigator/productSub

Support in all current engines.

FirefoxYesSafariYesChromeYes
OperaYesEdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

Returns either the string "20030107", or the string "20100101".

self . navigator . userAgent

NavigatorID/userAgent

Support in all current engines.

FirefoxYesSafariYesChromeYes
OperaYesEdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

Returns the complete `User-Agent` header.

window . navigator . vendor

Navigator/vendor

Support in all current engines.

FirefoxYesSafariYesChrome1+
OperaYesEdge79+
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera AndroidYes

Returns either the empty string, the string "Apple Computer, Inc.", or the string "Google Inc.".

window . navigator . vendorSub

Navigator/vendorSub

Support in all current engines.

FirefoxYesSafariYesChromeYes
Opera15+EdgeYes
Edge (Legacy)12+Internet ExplorerYes
Firefox AndroidYesSafari iOSYesChrome AndroidYesWebView AndroidYesSamsung InternetYesOpera Android14+

Returns the empty string.

8.9.1.2 言語の好み
self . navigator . language

NavigatorLanguage/language

Support in all current engines.

Firefox1+Safari1+Chrome1+
Opera4+Edge79+
Edge (Legacy)12+Internet Explorer11
Firefox Android4+Safari iOS1+Chrome Android18+WebView Android1+Samsung Internet1.0+Opera Android10.1+

ユーザーの優先言語を表す言語タグを返す。

self . navigator . languages

NavigatorLanguage/languages

Support in all current engines.

Firefox32+Safari11+Chrome32+
Opera24+Edge79+
Edge (Legacy)12+Internet Explorer11
Firefox Android4+Safari iOSYesChrome Android32+WebView Android4.4.3+Samsung Internet2.0+Opera Android24+

ユーザーの優先言語を表す言語タグの配列を返す。

最も優先される言語は、navigator.languageによって返されるものである。

A languagechange event is fired at the Window or WorkerGlobalScope object when the user agent's understanding of what the user's preferred languages are changes.

8.9.1.3 カスタムスキームハンドラー:registerProtocolHandler()メソッド

Navigator/registerProtocolHandler

Firefox3+Safari?Chrome13+
Opera11.6+Edge79+
Edge (Legacy)NoInternet Explorer?
Firefox AndroidNoSafari iOSNoChrome AndroidNoWebView AndroidNoSamsung InternetYesOpera Android?
caniuse.com table
window . navigator . registerProtocolHandler(scheme, url)

Registers a handler for scheme at url. For example, an online telephone messaging service could register itself as a handler of the sms: scheme, so that if the user clicks on such a link, they are given the opportunity to use that web site. [SMS]

The string "%s" in url is used as a placeholder for where to put the URL of the content to be handled.

Throws a "SecurityError" DOMException if the user agent blocks the registration (this might happen if trying to register as a handler for "http", for instance).

Throws a "SyntaxError" DOMException if the "%s" string is missing in url.

window . navigator . unregisterProtocolHandler(scheme, url)

引数で指定されたハンドラーの登録を解除する。

Throws a "SecurityError" DOMException if the user agent blocks the deregistration (this might happen if with invalid schemes, for instance).

Throws a "SyntaxError" DOMException if the "%s" string is missing in url.

8.9.1.4 クッキー
window . navigator . cookieEnabled

Navigator/cookieEnabled

Support in all current engines.

Firefox1+Safari1+Chrome1+
OperaYesEdge79+
Edge (Legacy)12+Internet ExplorerYes
Firefox Android4+Safari iOS1+Chrome Android18+WebView Android1+Samsung Internet7.0+Opera AndroidYes

クッキーの設定が拒否される場合falseを返し、そうでなければtrueを返す。

8.9.1.5 プラグイン
window . navigator . plugins . refresh( [ refresh ] )

NavigatorPlugins/plugins

Support in one engine only.

Firefox?Safari?ChromeYes
Opera?EdgeYes
Edge (Legacy)NoInternet Explorer?
Firefox Android?Safari iOS?Chrome AndroidYesWebView AndroidYesSamsung InternetYesOpera Android?

サポートされたプラグインのリストおよびこのページへのMIMEタイプを更新し、そのリストが変更された場合にページを再読み込みする。

window . navigator . plugins . length

Returns the number of plugins, represented by Plugin objects, that the user agent reports.

plugin = window . navigator . plugins . item(index)
window . navigator . plugins[index]

Returns the specified Plugin object.

plugin = window . navigator . plugins . item(name)
window . navigator . plugins[name]

Returns the Plugin object for the plugin with the given name.

window . navigator . mimeTypes . length

NavigatorPlugins/mimeTypes

Support in one engine only.

Firefox?Safari?ChromeYes
Opera?EdgeYes
Edge (Legacy)NoInternet Explorer?
Firefox Android?Safari iOS?Chrome AndroidYesWebView AndroidYesSamsung InternetYesOpera Android?

Returns the number of MIME types, represented by MimeType objects, supported by the plugins that the user agent reports.

mimeType = window . navigator . mimeTypes . item(index)
window . navigator . mimeTypes[index]

Returns the specified MimeType object.

mimeType = window . navigator . mimeTypes . item(name)
window . navigator . mimeTypes[name]

Returns the MimeType object for the given MIME type.

plugin . name

プラグインの名前を返す。

plugin . description

プラグインの説明を返す。

plugin . filename

現在のプラットフォームに該当する場合、プラグインライブラリーのファイル名を返す。

plugin . length

Returns the number of MIME types, represented by MimeType objects, supported by the plugin.

mimeType = plugin . item(index)
plugin[index]

Returns the specified MimeType object.

mimeType = plugin . item(name)
plugin[name]

Returns the MimeType object for the given MIME type.

mimeType . type

MIMEタイプを返す。

mimeType . description

MIMEタイプの説明を返す。

mimeType . suffixes

コンマ区切りリストで、MIMEタイプの典型的なファイル拡張子を返す。

mimeType . enabledPlugin

Returns the Plugin object that implements this MIME type.

window . navigator . javaEnabled()

NavigatorPlugins/javaEnabled

Support in one engine only.

Firefox?Safari?ChromeYes
Opera?EdgeYes
Edge (Legacy)NoInternet Explorer?
Firefox Android?Safari iOS?Chrome AndroidYesWebView AndroidYesSamsung InternetYesOpera Android?

MIMEタイプ"application/x-java-vm"をサポートするプラグインがある場合にtrueを返す。