如何用JavaScript获取OS名称和版本?

How to get the OS name and version with JavaScript?

我正在创建一个对象,以便通过调用函数更轻松地访问 browser/system 信息。其中一个函数访问操作系统名称和版本以及 returns 一个值。

const Sys = {
  // retrieves the operating system
  OS: function () {
    // function body
  }
  // other functions...
}

我不知道如何获取我需要的信息。我确实在 Stack Overflow 上找到了类似的问题,但没有得到正确的信息。例如,如果我在 Windows 10 Pro 32 位上 运行,我希望输出为 "Windows 10 Pro 32-bit"。我猜我必须使用 navigator 对象,但除此之外我真的什么都不知道。有人可以帮忙吗?

我建议使用 platform.js (see demo)。

识别用户的浏览器:

platform.os;
// => OS X 10.15.6 (in my case)

或者解析一个userAgent字符串。

let info = platform.parse("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.1 Safari/605.1.15");

info.name;
// => Safari

info.version;
// => 14.0.1

info.description;
// => Safari 14.0.1 on OS X 10.15.6