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 window.navigator property.

Instance properties

Doesn't inherit any properties.

Standard properties

Returns a Bluetooth object for the current document, providing access to Web Bluetooth API functionality.

Returns a Clipboard object that provides read and write access to the system clipboard.

Returns a NetworkInformation object containing information about the network connection of a device.

Returns a ContactsManager interface which allows users to select entries from their contact list and share limited details of the selected entries with a website or application.

Returns false if setting a cookie will be ignored and true otherwise.

Returns the 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.

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.

Returns a Geolocation object allowing accessing the location of the device.

Returns the GPU object for the current browsing context. The entry point for the WebGPU API.

Returns the number of logical processor cores available.

Returns an HID object providing methods for connecting to HID devices, listing attached HID devices, and event handlers for connected HID devices.

Returns an Ink object for the current document, providing access to Ink API functionality.

Returns a Keyboard object which provides access to functions that retrieve keyboard layout maps and toggle capturing of key presses from the physical keyboard.

Returns a string representing the preferred language of the user, usually the language of the browser UI. The null value is returned when this is unknown.

Returns an array of strings representing the languages known to the user, by order of preference.

Returns a LockManager object that provides methods for requesting a new Lock object and querying for an existing Lock object.

Provides access to the browser's NavigatorLogin object, which a federated identity provider (IdP) can use to set a user's login status when they sign into or out of the IdP. See Federated Credential Management (FedCM) API for more details.

Returns the maximum number of simultaneous touch contact points are supported by the current device.

Returns a MediaCapabilities object that can expose information about the decoding and encoding capabilities for a given format and output capabilities.

Returns a reference to a MediaDevices object which can then be used to get information about available media devices (MediaDevices.enumerateDevices()), find out what constrainable properties are supported for media on the user's computer and user agent (MediaDevices.getSupportedConstraints()), and to request access to media using MediaDevices.getUserMedia().

Returns MediaSession object which can be used to provide metadata that can be used by the browser to present information about the currently-playing media to the user, such as in a global media controls UI.

Returns a boolean value indicating whether the browser is working online.

Returns true if the browser can display PDF files inline when navigating to them, and false otherwise.

Returns a Permissions object that can be used to query and update permission status of APIs covered by the Permissions API.

Returns a reference to the Presentation API.

Returns a Scheduling object for the current document.

Returns a Serial object, which represents the entry point into the Web Serial API to enable the control of serial ports.

Returns a ServiceWorkerContainer object, which provides access to registration, removal, upgrade, and communication with the ServiceWorker objects for the associated document.

Returns the singleton StorageManager object used for managing persistence permissions and estimating available storage on a site-by-site/app-by-app basis.

Returns a USB object for the current document, providing access to WebUSB API functionality.

Returns a UserActivation object containing information about the current window's user activation state.

Returns the user agent string for the current browser.

Returns a NavigatorUAData object, which gives access to information about the browser and operating system of the user.

Returns a reference to the VirtualKeyboard API, to take control of the on-screen virtual keyboard.

Returns a WakeLock interface you can use to request screen wake locks and prevent screen from dimming, turning off, or showing a screen saver.

Indicates whether the user agent is controlled by automation.

Returns the WindowControlsOverlay interface which exposes information about the geometry of the title bar in desktop Progressive Web Apps, and an event to know whenever it changes.

Returns XRSystem object, which represents the entry point into the WebXR API.

Non-standard properties

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.

Returns a boolean indicating a user's consent to their information being shared or sold.

Returns a boolean indicating whether the browser is running in standalone mode. Available on Apple's iOS Safari only.

Deprecated properties

Returns an array containing every VRDisplay object that is currently presenting (VRDisplay.ispresenting is true).

Always returns 'Mozilla', in any browser.

Always returns 'Netscape', in any browser.

Returns the version of the browser as a string. Do not rely on this property to return the correct value.

Reports the value of the user's do-not-track preference. When this value is "1", your website or application should not track the user.

Returns an MimeTypeArray listing the MIME types supported by the browser.

Returns a string that represents the current operating system.

Returns a string representing the platform of the browser. Do not rely on this function to return a significant value.

Returns a PluginArray listing the plugins installed in the browser.

Always returns 'Gecko', in any browser.

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

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

Always returns the empty string.

Instance methods

Doesn't inherit any method.

Returns true if a call to Navigator.share() would succeed.

Clears a badge on the current app's icon and returns a Promise that resolves with undefined.

Substitutes specified strings inside the mapped URL corresponding to a given opaque URN or FencedFrameConfig's internal url property. This method has been made available as a temporary measure (hence "deprecated") to enable that substitution for fenced frame URLs, helping ad tech providers to migrate existing implementations across to privacy sandbox APIs.

Returns a value indicating whether the specified media element, audio context, or media feature "type" is allowed to autoplay.

Returns a promise that resolves with a BatteryManager object that returns information about the battery charging status.

returns an array of Gamepad objects, one for each gamepad connected to the device.

Returns a promise that resolves with an array of objects representing any related native or Progressive Web Applications that the user has installed.

Allows websites to register themselves as a possible handler for a given protocol.

Returns a Promise for a MediaKeySystemAccess object.

Returns a Promise representing a request for access to MIDI devices on the user's system.

Used to asynchronously transfer a small amount of data using HTTP from the User Agent to a web server.

Sets a badge on the icon associated with this app and returns a Promise that resolves with undefined.

Invokes the native sharing mechanism of the current platform.

Causes vibration on devices with support for it. Does nothing if vibration support isn't available.

Unregister a website that is a handler for a given protocol.

Deprecated methods

After having prompted the user for permission, returns the audio or video stream associated to a camera or microphone on the local computer.

Returns a promise that resolves to an array of VRDisplay objects representing any available VR devices connected to the computer.

Always returns false.

Returns false. JavaScript taint/untaint functions removed in JavaScript 1.2.


HTML Standard
# the-navigator-object

Browser compatibility

BCD tables only load in the browser