To detect the operating system on the client machine, one can simply use navigator.appVersion property.
The Navigator appVersion property is a read-only property and it returns a string that represents the version information of the browser.
Syntax:
navigator.appVersionExample 1: This example uses the navigator.appVersion property to display the operating system name.
<!DOCTYPE html>
<html>
<head>
<title>
How to detect operating system on the
client machine using JavaScript ?
</title>
</head>
<body style="text-align:center;">
<h1 style="color:green;">GeeksforGeeks</h1>
<button ondblclick="operatingSytem()">
Return Operating System Name
</button>
<p id="OS"></p>
<!-- Script to display the OS name -->
<script>
function operatingSytem() {
let OSName = "Unknown OS";
if (navigator.appVersion.indexOf("Win") != -1) OSName = "Windows";
if (navigator.appVersion.indexOf("Mac") != -1) OSName = "MacOS";
if (navigator.appVersion.indexOf("X11") != -1) OSName = "UNIX";
if (navigator.appVersion.indexOf("Linux") != -1) OSName = "Linux";
// Display the OS name
document.getElementById("OS").innerHTML = OSName;
}
</script>
</body>
</html>
Output:

Example 2: This example uses the navigator.appVersion property to display all the properties of the client machine.
<!DOCTYPE html>
<html>
<head>
<title>
How to detect operating system on the
client machine using JavaScript ?
</title>
</head>
<body style="text-align:center;">
<h1 style="color:green;">GeeksforGeeks</h1>
<button onclick="version()">
Return OS Version
</button>
<p id="OS"></p>
<!-- Script to return OS details -->
<script>
function version() {
let os = navigator.appVersion;
// Display the OS details
document.getElementById("OS").innerHTML = os;
}
</script>
</body>
</html>
Output:
