process

process模块允许你获得或者修改当前node进程的设置,不想其他的模块,process是一个全局进程(node主进程),你可以直接通过process变量直接访问它。

process.argv

  • <string[]>

process.argv 属性返回数组,其中包含启动 Node.js 进程时传入的命令行参数。 第一个元素将是 process.execPath。 如果需要访问 argv[0] 的原始值,请参阅 process.argv0。 第二个元素将是正在执行的 JavaScript 文件的路径。 其余元素将是任何其他命令行参数

process.chdir(directory)

process.chdir() 方法更改 Node.js 进程的当前工作目录,如果失败则抛出异常(例如,如果指定的 directory 不存在)。

process.platform

process.platform 属性返回用于标识编译 Node.js 二进制文件的操作系统平台的字符串。

  • aix
  • darwin // mac系统
  • freebsd
  • linux
  • openbsd
  • sunos
  • win32 // window系统
// 判断当前系统是否为win
process.platform === 'win32'

process.arch: 返回CPU架构,值可能为: arm arm64 ia32 mips mipsel ppc ppc64 s390 s390x x64

process.env:返回包含环境名称与值的键值对对象。比如process.env.NODE_ENV。

process.cwd():返回当前的工作目录。

process.platform:返回一个识别操作系统的字符串:'aix','darwin' (macOS),'freebsd','linux','openbsd','sunos',或者'win32' (Windows)。

process.uptime():返回Node.js进程已运行的秒数。

process.cpuUsage():返回当前进程的用户和系统CPU时间的使用情况--例如{ user: 12345, system: 9876 }。将该对象传给该方法,以获得一个相对的读数

const process = require("process");

const startUsage = process.cpuUsage();
// { user: 31000, system: 46000 }

process.memoryUsage():返回一个以字节为单位描述内存使用情况的对象。

import { memoryUsage } from 'node:process';

console.log(memoryUsage());
// Prints:
// {
//  rss: 4935680,
//  heapTotal: 1826816,
//  heapUsed: 650472,
//  external: 49879,
//  arrayBuffers: 9386
// }
  • heapTotalheapUsed 执行 V8's 内存占用.
  • external 指的是绑定到V8管理的JavaScript对象的c++对象的内存使用情况。
  • rss,常驻内存设置大小,是进程在主内存设备中占用的空间量(这是分配的总内存的子集),包括所有c++和JavaScript对象和代码。
  • arrayBuffers arrayBuffers指的是为arrayBuffers和SharedArrayBuffers分配的内存,包括所有Node.j的Buffers。它包含在external里面.

process.version:返回Node.js版本的字符串。比如18.0.0。

process.versions: 其中列出了Node.js及其依赖模块的版本字符串。

import { versions } from 'node:process';

console.log(versions);
{ node: '11.13.0',
  v8: '7.0.276.38-node.18',
  uv: '1.27.0',
  zlib: '1.2.11',
  brotli: '1.0.7',
  ares: '1.15.0',
  modules: '67',
  nghttp2: '1.34.0',
  napi: '4',
  llhttp: '1.1.1',
  openssl: '1.1.1b',
  cldr: '34.0',
  icu: '63.1',
  tz: '2018e',
  unicode: '11.0' }

process.pid: 显示进程的pid

process.report:生成诊断报告。

process.exit(code):退出当前应用程序。使用退出码0来表示成功,或在必要时使用适当的错误代码。

参考文章


看见了
840 声望13 粉丝

前端开发,略懂后台;


« 上一篇
【node】DNS
下一篇 »
【node】Buffer