有时候,我们需要知道NodeJS是安装在32位还是64位的机器上,包括当前的windows、Linux、mac和ubuntu。32位是4个字节的数据,64位是8个字节的数据内存分配,所以每台机器都有不同的架构来存储和处理数据。
Nodejs提供了多种方法来了解它
- 使用 REPL
- Javascript编程
使用REPL检查32位或64位
REPL是NODEJS执行命令的控制台,它就像windows命令提示符或Linux shell提示符。它与Nodejs平台的默认安装一起出现。
首先,要进入REPL模式,在命令提示符中输入node,你会在交互式模式下得到REPL模式。
Nodejs提供了操作系统模块,以获得当前安装的机器信息。arch()函数返回当前系统的CPU信息,返回值为x32, x64。
C:\Users\Kiran>node
>
>
> require('os').arch()
'x64'
第二种方法,使用process全局对象,获得当前节点的进程信息。由于是全局对象,所以不需要导入模块。
C:\Users\Kiran>node
>process.env
而且它输出很多进程的元数据环境信息。其中一个属性是PROCESSOR_ARCHITECTURE,它的值告诉我们是否是64位。
Platform: 'MCD',
platformcode: 'KV',
PROCESSOR_ARCHITECTURE: 'AMD64',
PROCESSOR_IDENTIFIER: 'Intel64 Family 6 Model 78 Stepping 3, GenuineIntel',
或者第三种方式,process.arch给出Nodejs进程的全局对象arch给出
node -p "process.arch"
如果是32位机器,则返回ia32,如果是64位机器,则返回x64。
使用JavaScript查找32位或64位
首先,使用操作系统内置的模块,使用require关键字导入,使用arch()方法返回进程架构
const os = require('os');
console.log(os.arch());
第二种方法是使用带有arch属性的process全局对象
console.log(process.arch);
最后,使用process.env返回进程的元信息
console.log(process.env.PROCESSOR_ARCHITECTURE) //returns AMD64 or IA32
总结
Nodejs提供了许多方法来了解进程的当前机器信息,无论是REPL命令还是Java脚本代码。
希望你喜欢:-)