node.js – 在NodeJS的OS模块中,是否有人知道Yosemite或Windows8出现的平台是什么?

我试图检测操作系统的自然外观和感觉,因此我将我的元素设计为接近操作系统的感觉(例如Skeuomorph或Flat).

目前,我正在使用NodeJS的’os’模块来获取操作系统信息.在Mac [Mavericks]上我可以通过os.platform()获得值’darwin’,根据wiki,它也是Yosemite的名字.

我的主要目的是检测操作系统是否使用平面设计(例如新的Windows8或Mac的Yosemite)或传统的skeuomorph设计.

是否有各种操作系统的平台名称列表?
  – 或者 –
是否有更简单/更好的方法来检测操作系统是使用平面还是斜面设计?

最佳答案 引用
here的回答.

现在有一个os模​​块:Node OS Module Docs.它具有获取平台os.platform的功能

文档不提供返回值.所以,我在下面记录了一些内容.结果分别针对Ubuntu 12.04 64位,OS X 10.8.5,Windows 7 64位和Joyent SmartMachine.在节点0.10上进行的测试.

Linux的

> os.type():’Linux’
> os.platform():’linux’
> os.arch():’x64′

OS X(Mac)

> os.type():’达尔文’
> os.platform():’darwin’
> os.arch():’x64′

视窗

> os.type():’Windows_NT’
> os.platform():’win32′
> os.arch():’x64′

SmartMachine

> os.type():’SunOS’
> os.platform():’sunos’
> os.arch():’ia32′

注意:在Windows 7上,64位节点可能会错误地将os.arch()报告为ia32.这是一个记录在案的错误:os.arch should be the architecture of the OS not of the process

点赞