Navigator: platform property

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.

The platform property read-only property of the Navigator interface returns a string identifying the platform on which the user's browser is running.

Note: In general, you should whenever possible avoid writing code that uses methods or properties like this one to try to find out information about the user's environment, and instead write code that does feature detection.


A string identifying the platform on which the user's browser is running; for example: "MacIntel", "Win32", "Linux x86_64", "Linux armv81".


navigator.platform should almost always be avoided in favor of feature detection. But there is one case where, among the options you could use, navigator.platform may be the least-bad option: When you need to show users advice about whether the modifier key for keyboard shortcuts is the command key (found on Apple systems) rather than the control key (on non-Apple systems):

let modifierKeyPrefix = "^"; // control key
if (
  navigator.platform.indexOf("Mac") === 0 ||
  navigator.platform === "iPhone"
) {
  modifierKeyPrefix = "⌘"; // command key

That is, check if navigator.platform starts with "Mac" or else is an exact match for "iPhone", and then based on whether either of those is true, choose the modifier key your web application's UI will advise users to press in keyboard shortcuts.

Usage notes

On Windows, modern browsers return "Win32" even if running on a 64-bit version of Windows.


HTML Standard
# dom-navigator-platform-dev

Browser compatibility

BCD tables only load in the browser

See also