---
title: Navigator
slug: Web/API/Navigator
tags:
- API
- DOM4
- Interface
- Navigator
- NeedsTranslation
- Reference
- TopicStub
- Web
- Web Performance
translation_of: Web/API/Navigator
---
{{APIRef("DOM4")}}
The Navigator
interface represents the state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities.
A Navigator
object can be retrieved using the read-only {{domxref("window.navigator")}} property.
Properties
Doesn't inherit any properties, but implements those defined in {{domxref("NavigatorID")}}, {{domxref("NavigatorLanguage")}}, {{domxref("NavigatorOnLine")}}, {{domxref("NavigatorContentUtils")}}, {{domxref("NavigatorStorage")}}, {{domxref("NavigatorStorageUtils")}}, {{domxref("NavigatorConcurrentHardware")}}, {{domxref("NavigatorPlugins")}}, and {{domxref("NavigatorUserMedia")}}.
Standard
- {{domxref("Navigator.activeVRDisplays")}} {{readonlyInline}}{{experimental_inline}}
- Returns an array containing every {{domxref("VRDisplay")}} object that is currently presenting ({{domxref("VRDisplay.ispresenting")}} is
true
).
- {{domxref("NavigatorID.appCodeName")}} {{readonlyInline}}{{experimental_inline}}
- Returns the internal "code" name of the current browser. Do not rely on this property to return the correct value.
- {{domxref("NavigatorID.appName")}} {{readonlyInline}}{{experimental_inline}}
- Returns a {{domxref("DOMString")}} with the official name of the browser. Do not rely on this property to return the correct value.
- {{domxref("NavigatorID.appVersion")}} {{readonlyInline}}{{experimental_inline}}
- Returns the version of the browser as a {{domxref("DOMString")}}. Do not rely on this property to return the correct value.
- {{domxref("Navigator.battery")}} {{readonlyInline}}
- Returns a {{domxref("BatteryManager")}} object you can use to get information about the battery charging status.
- {{domxref("Navigator.connection")}} {{readonlyInline}}{{experimental_inline}}
- Provides a {{domxref("NetworkInformation")}} object containing information about the network connection of a device.
- {{domxref("Navigator.cookieEnabled")}} {{readonlyinline}}
- Returns false if setting a cookie will be ignored and true otherwise.
- {{domxref("Navigator.geolocation")}} {{readonlyInline}}
- Returns a {{domxref("Geolocation")}} object allowing accessing the location of the device.
- {{domxref("NavigatorConcurrentHardware.hardwareConcurrency")}} {{readOnlyInline}}
- Returns the number of logical processor cores available.
- {{domxref("NavigatorPlugins.javaEnabled")}} {{readonlyInline}}{{experimental_inline}}
- Returns a {{domxref("Boolean")}} flag indicating whether the host browser is Java-enabled or not.
- {{domxref('Navigator.keyboard')}} {{readonlyinline}} {{experimental_inline}}
- Returns a {{domxref('Keyboard')}} object which provides access to functions that retrieve keyboard layout maps and toggle capturing of key presses from the physical keyboard.
- {{domxref("NavigatorLanguage.language")}} {{readonlyInline}}
- Returns a {{domxref("DOMString")}} representing the preferred language of the user, usually the language of the browser UI. The
null
value is returned when this is unknown.
- {{domxref("NavigatorLanguage.languages")}} {{readonlyInline}}
- Returns an array of {{domxref("DOMString")}} representing the languages known to the user, by order of preference.
- {{domxref("Navigator.locks")}} {{readonlyinline}}{{experimental_inline}}
- Returns a {{domxref("LockManager")}} object which provides methods for requesting a new {{domxref('Lock')}} object and querying for an existing {{domxref('Lock')}} object
- {{domxref("Navigator.mediaCapabilities")}} {{readonlyinline}}{{experimental_inline}}
- Returns a {{domxref("MediaCapabilities")}} object that can expose information about the decoding and encoding capabilities for a given format and output capabilities.
- {{domxref("Navigator.maxTouchPoints")}} {{readonlyInline}}
- Returns the maximum number of simultaneous touch contact points are supported by the current device.
- {{domxref("NavigatorPlugins.mimeTypes")}} {{readonlyInline}}{{experimental_inline}}
- Returns an {{domxref("MimeTypeArray")}} listing the MIME types supported by the browser.
- {{domxref("NavigatorOnLine.onLine")}} {{readonlyInline}}
- Returns a {{domxref("Boolean")}} indicating whether the browser is working online.
- {{domxref("Navigator.oscpu")}}
- Returns a string that represents the current operating system.
- {{domxref("Navigator.permissions")}} {{readonlyinline}}{{experimental_inline}}
- Returns a {{domxref("Permissions")}} object that can be used to query and update permission status of APIs covered by the Permissions API.
- {{domxref("NavigatorID.platform")}} {{readonlyInline}}{{experimental_inline}}
- Returns a string representing the platform of the browser. Do not rely on this function to return a significant value.
- {{domxref("NavigatorPlugins.plugins")}} {{readonlyInline}}{{experimental_inline}}
- Returns a {{domxref("PluginArray")}} listing the plugins installed in the browser.
- {{domxref("NavigatorID.product")}} {{readonlyInline}} {{experimental_inline}}
- Always returns
'Gecko'
, on any browser. This property is kept only for compatibility purpose.
- {{domxref("Navigator.serviceWorker")}} {{readonlyInline}}
- Returns a {{domxref("ServiceWorkerContainer")}} object, which provides access to registration, removal, upgrade, and communication with the {{domxref("ServiceWorker")}} objects for the associated document.
- {{domxref("NavigatorStorage.storage")}} {{readonlyinline}}
- Returns the singleton {{domxref('StorageManager')}} object used for managing persistence permissions and estimating available storage on a site-by-site/app-by-app basis.
- {{domxref("NavigatorID.userAgent")}} {{readonlyInline}}
- Returns the user agent string for the current browser.
- {{domxref("Navigator.webdriver")}} {{readonlyInline}} {{experimental_inline}}
- Indicates whether the user agent is controlled by automation.
Non-standard
- {{domxref("Navigator.buildID")}} {{non-standard_inline}}
- Returns the build identifier of the browser. In modern browsers this property now returns a fixed timestamp as a privacy measure, e.g.
20181001000000
in Firefox 64 onwards.
- {{domxref("Navigator.credentials")}} {{non-standard_inline}}
- Returns the {{domxref("CredentialsContainer")}} interface which exposes methods to request credentials and notify the user agent when interesting events occur such as successful sign in or sign out.
- {{domxref("Navigator.deviceMemory")}} {{readonlyInline}} {{non-standard_inline}}
- Returns the amount of device memory in gigabytes. This value is an approximation given by rounding to the nearest power of 2 and dividing that number by 1024.
- {{domxref("Navigator.doNotTrack")}} {{non-standard_inline}}
- Reports the value of the user's do-not-track preference. When this value is "yes", your web site or application should not track the user.
- {{domxref("Navigator.mediaDevices")}} {{non-standard_inline}}
- Returns a reference to a {{domxref("MediaDevices")}} object which can then be used to get information about available media devices ({{domxref("MediaDevices.enumerateDevices()")}}), find out what constrainable properties are supported for media on the user's computer and user agent ({{domxref("MediaDevices.getSupportedConstraints()")}}), and to request access to media using {{domxref("MediaDevices.getUserMedia()")}}.
- {{domxref("Navigator.mozNotification")}} {{obsolete_inline}} {{deprecated_inline("22")}} {{non-standard_inline}}
{{domxref("Navigator.webkitNotification")}} {{obsolete_inline}}
- Returns a {{domxref("navigator.mozNotification", "notification")}} object you can use to deliver notifications to the user from your web application.
- {{domxref("Navigator.mozSocial")}} {{non-standard_inline}}
- The Object, returned by the
navigator.mozSocial
property, is available within the social media provider's panel to provide functionality it may need.
- {{domxref("Navigator.presentation")}} {{non-standard_inline}}
- Returns a reference to the {{domxref("Presentation")}} API.
- {{domxref("Navigator.productSub")}} {{non-standard_inline}}
- Returns the build number of the current browser (e.g., "20060909").
- {{domxref("Navigator.securitypolicy")}} {{non-standard_inline}}
- Returns an empty string. In Netscape 4.7x, returns "US & CA domestic policy" or "Export policy".
- {{domxref("Navigator.standalone")}} {{non-standard_inline}}
- Returns a boolean indicating whether the browser is running in standalone mode. Available on Apple's iOS Safari only.
- {{domxref("Navigator.storageQuota")}} {{readonlyinline}} {{experimental_inline}}
- Returns a {{domxref('StorageQuota')}} interface which provides means to query and request storage usage and quota information.
- {{domxref("Navigator.vendor")}} {{non-standard_inline}}
- Returns the vendor name of the current browser (e.g., "Netscape6").
- {{domxref("Navigator.vendorSub")}} {{non-standard_inline}}
- Returns the vendor version number (e.g. "6.1").
- {{domxref("Navigator.webkitPointer")}} {{non-standard_inline}}
- Returns a PointerLock object for the Mouse Lock API.
Methods
Doesn't inherit any method, but implements those defined in {{domxref("NavigatorID")}}, {{domxref("NavigatorContentUtils")}}, {{domxref("NavigatorUserMedia")}}, and {{domxref("NavigatorStorageUtils")}}.
Standard
- {{domxref("Navigator.canShare()")}} {{experimental_inline}}
- Returns
true
if a call to Navigator.share()
would succeed.
- {{domxref("Navigator.getVRDisplays()")}} {{experimental_inline}}
- Returns a promise that resolves to an array of {{domxref("VRDisplay")}} objects representing any available VR devices connected to the computer.
- {{domxref("Navigator.getUserMedia", "Navigator.getUserMedia()")}} {{experimental_inline}}
- After having prompted the user for permission, returns the audio or video stream associated to a camera or microphone on the local computer.
- {{domxref("Navigator.registerContentHandler()")}} {{Obsolete_inline(59)}}
- Allows web sites to register themselves as a possible handler for a given MIME type.
- {{domxref("Navigator.registerProtocolHandler()")}}
- Allows web sites to register themselves as a possible handler for a given protocol.
- {{domxref("Navigator.requestMediaKeySystemAccess()")}} {{experimental_inline}}
- Returns a {{jsxref("Promise")}} for a MediaKeySystemAccess object.
- {{domxref("Navigator.sendBeacon()")}}{{experimental_inline}}
- Used to asynchronously transfer a small amount of data using {{Glossary("HTTP")}} from the User Agent to a web server.
- {{domxref("Navigator.share()")}}{{experimental_inline}}
- Invokes the native sharing mechanism of the current platform.
- {{domxref("NavigatorID.taintEnabled()")}} {{deprecated_inline("1.7.8")}} {{obsolete_inline("9.0")}} {{experimental_inline}}
- Returns
false
. JavaScript taint/untaint functions removed in JavaScript 1.2.
- {{domxref("Navigator.vibrate()")}} {{gecko_minversion_inline("11.0")}}
- Causes vibration on devices with support for it. Does nothing if vibration support isn't available.
Non-standard
- {{domxref("Navigator.mozIsLocallyAvailable()")}} {{non-standard_inline}}
- Lets code check to see if the document at a given URI is available without using the network.
- {{domxref("Navigator.mozPay()")}} {{non-standard_inline}}
- Allows in-app payment.
Specifications
Specification |
Status |
Comment |
{{SpecName('HTML WHATWG', '#the-navigator-object', 'the Navigator object')}} |
{{Spec2('HTML WHATWG')}} |
|
Browser compatibility
{{Compat("api.Navigator")}}