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 x86_64".


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

Most browsers, including Chrome, Edge, and Firefox 63 and later, return "Win32" even if running on a 64-bit version of Windows. Internet Explorer and versions of Firefox prior to version 63 still report "Win64".


HTML Standard
# dom-navigator-platform-dev

Browser compatibility

BCD tables only load in the browser

See also