NODE(1) General Commands Manual NODE(1) (NAME) node - (SYNOPSIS) node [] [ v8] [<--> | -e | --] [ ...] node inspect, [<--> | -e | <>:<>] ... node [--v8-options] (DESCRIPTION) (Node.js) . . node REPL . (OPTIONS) - stdin. - stdin . -- node . . eval/print . --abort-on-uncaught-exception (Abort) core ( lldb gdb mdb) . process.setUncaughtExceptionCaptureCallback() ( node:domain ) . --allow-addons (Permission Model) (native addons) . ERR_DLOPEN_DISABLED Node.js --allow-addons . : // require require('nodejs-addon-example'); $ node --permission --allow-fs-read=* index.js node:internal/modules/cjs/loader:1319 return process.dlopen(module, path.toNamespacedPath(filename)); ^ Error: Cannot load native addon because loading addons is disabled. at Module._extensions..node (node:internal/modules/cjs/loader:1319:18) at Module.load (node:internal/modules/cjs/loader:1091:32) at Module._load (node:internal/modules/cjs/loader:938:12) at Module.require (node:internal/modules/cjs/loader:1115:19) at require (node:internal/modules/helpers:130:18) at Object. (/home/index.js:1:15) at Module._compile (node:internal/modules/cjs/loader:1233:14) at Module._extensions..js (node:internal/modules/cjs/loader:1287:10) at Module.load (node:internal/modules/cjs/loader:1091:32) at Module._load (node:internal/modules/cjs/loader:938:12) { code: 'ERR_DLOPEN_DISABLED' } --allow-child-process (Permission Model) child . ERR_ACCESS_DENIED Node.js --allow-child-process . : const childProcess = require('node:child_process'); // childProcess.spawn('node', ['-e', 'require("fs").writeFileSync("/new-file", "example")']); $ node --permission --allow-fs-read=* index.js node:internal/child_process:388 const err = this._handle.spawn(options); ^ Error: Access to this API has been restricted at ChildProcess.spawn (node:internal/child_process:388:28) at node:internal/main/run_main_module:17:47 { code: 'ERR_ACCESS_DENIED', permission: 'ChildProcess' } child_process.fork() . Node.js Permission Model --allow-child-process child child_process.fork() Permission Model . child_process.spawn() NODE_OPTIONS . --allow-ffi (Permission Model) FFI . FFI ERR_ACCESS_DENIED Node.js --allow-ffi . node:ffi --experimental-ffi FFI . : const { DynamicLibrary, suffix } = require('node:ffi'); const lib = new DynamicLibrary(`./mylib.${suffix}`); $ node --permission --experimental-ffi index.js Error: Access to this API has been restricted. Use --allow-ffi to manage permissions. at node:internal/main/run_main_module:17:47 { code: 'ERR_ACCESS_DENIED', permission: 'FFI' } --allow-fs-read (filesystem) (Permission Model) . --allow-fs-read : o * - FileSystemRead. o --allow-fs-read . : --allow-fs-read=/folder1/ --allow-fs-read=/folder2/ . --require . $ node --permission -r custom-require.js -r custom-require-2.js index.js o custom-require.js custom- require-2.js index.js . process.permission.has('fs.read', 'index.js'); // true process.permission.has('fs.read', 'custom-require.js'); // true process.permission.has('fs.read', 'custom-require-2.js'); // true --allow-fs-write (filesystem) (Permission Model) . --allow-fs-write : o * - FileSystemWrite. o --allow-fs-write . : --allow-fs-write=/folder1/ --allow-fs-write=/folder2/ (,) . . . --allow-inspector (Permission Model) (inspector) . ERR_ACCESS_DENIED Node.js --allow-inspector . : const { Session } = require('node:inspector/promises'); const session = new Session(); session.connect(); $ node --permission index.js Error: connect ERR_ACCESS_DENIED Access to this API has been restricted. Use --allow-inspector to manage permissions. code: 'ERR_ACCESS_DENIED', } --allow-net (Permission Model) . ERR_ACCESS_DENIED Node.js --allow-net . : const http = require('node:http'); // const req = http.get('http://example.com', () => {}); req.on('error', (err) => { console.log('err', err); }); $ node --permission index.js Error: connect ERR_ACCESS_DENIED Access to this API has been restricted. Use --allow-net to manage permissions. code: 'ERR_ACCESS_DENIED', } --allow-openssl-store (Permission Model) OpenSSL STORE crypto.createPrivateKey(). ERR_ACCESS_DENIED --allow-openssl-store . permission.drop() . OpenSSL STORE . . fs.read fs.write net . --allow-wasi (Permission Model) WASI . ERR_ACCESS_DENIED --allow-wasi Node.js . : const { WASI } = require('node:wasi'); // new WASI({ version: 'preview1', // preopens: { '/': '/', }, }); $ node --permission --allow-fs-read=* index.js Error: Access to this API has been restricted at node:internal/main/run_main_module:30:49 { code: 'ERR_ACCESS_DENIED', permission: 'WASI', } --allow-worker (Permission Model) (worker thread) . ERR_ACCESS_DENIED --allow-worker Node.js . : const { Worker } = require('node:worker_threads'); // new Worker(__filename); $ node --permission --allow-fs-read=* index.js Error: Access to this API has been restricted at node:internal/main/run_main_module:17:47 { code: 'ERR_ACCESS_DENIED', permission: 'WorkerThreads' } --build-sea=config (single executable application) JSON . . . single executable application . --build-snapshot snapshot blob --snapshot-blob . --snapshot-blob snapshot.blob . --snapshot-blob . $ echo "globalThis.foo = 'I am from the snapshot'" > snapshot.js # Run snapshot.js to initialize the application and snapshot the # state of it into snapshot.blob. $ node --snapshot-blob snapshot.blob --build-snapshot snapshot.js $ echo "console.log(globalThis.foo)" > index.js # Load the generated snapshot and start the application from index.js. $ node --snapshot-blob snapshot.blob index.js I am from the snapshot v8.startupSnapshot (deserialization) : $ echo "require('v8').startupSnapshot.setDeserializeMainFunction(() => console.log('I am from the snapshot'))" > snapshot.js $ node --snapshot-blob snapshot.blob --build-snapshot snapshot.js $ node --snapshot-blob snapshot.blob I am from the snapshot v8.startupSnapshot . . . . Node.js . Node.js . . v8.startupSnapshot.setDeserializeMainFunction() v8.startupSnapshot.addDeserializeCallback() . Node.js . --build-snapshot-config JSON . : o builder . --build-snapshot builder . o withoutCodeCache . (portability) . . -c, --check (Syntax check) . --completion-bash source bash Node.js. node --completion-bash > node_bash_completion source node_bash_completion -C condition, --conditions=condition (conditional exports) . . Node.js "node" "default" "import" "require" . "development": node -C development app.js --cpu-prof CPU V8 CPU . --cpu-prof-dir . --cpu-prof-name CPU.${yyyymmdd}.${hhmmss}.${pid}.${tid}.${seq}.cpuprofile . $ node --cpu-prof index.js $ ls *.cpuprofile CPU.20190409.202950.15293.0.0.cpuprofile --cpu-prof-name . : o ${pid} -- (Process ID) $ node --cpu-prof --cpu-prof-name 'CPU.${pid}.cpuprofile' index.js $ ls *.cpuprofile CPU.15293.cpuprofile --cpu-prof-dir CPU --cpu-prof . --diagnostic-dir . --cpu-prof-interval CPU --cpu-prof . . --cpu-prof-name CPU --cpu-prof . --diagnostic-dir=directory Set the directory to which all diagnostic output files are written. Defaults to current working directory. Affects the default output directory of: o --cpu-prof-dir o --heap-prof-dir o --redirect-warnings --disable-proto=mode Object.prototype.__proto__ . mode delete . mode throw ERR_PROTO_ACCESS . --disable-sigusr1 SIGUSR1 . --disable-warning=code-or-type code type . process.emitWarning() code type . code type . . Node.js : DeprecationWarning ExperimentalWarning node --disable-warning=DEP0025 DEP0025 require('node:sys') : import sys from 'node:sys'; const sys = require('node:sys'); DEP0025 require('node:sys') ( ExperimentalWarning: vm.measureMemory is an experimental feature in <=v21) node --disable-warning=ExperimentalWarning : import sys from 'node:sys'; import vm from 'node:vm'; vm.measureMemory(); const sys = require('node:sys'); const vm = require('node:vm'); vm.measureMemory(); --disable-wasm-trap-handler WebAssembly trap- handler V8 WebAssembly . (cage) WebAssembly ( WebAssembly WebAssembly) . ( ) WebAssembly ( ulimit -v) WebAssembly WebAssembly.Memory(): could not allocate memory . Node.js trap-handler WebAssembly ( ) . WebAssembly WebAssembly . --disable-wasm-trap-handler WebAssembly . Node.js . --disallow-code-generation-from-strings eval new Function . node:vm Node.js . --dns-result-order=order order dns.lookup() dnsPromises.lookup() . : o ipv4first: order ipv4first . o ipv6first: order ipv6first . o verbatim: order verbatim . verbatim dns.setDefaultResultOrder() --dns-result-order . --enable-fips FIPS . OpenSSL 3 fips . OpenSSL 1.1.1 Node.js OpenSSL FIPS . --enable-source-maps (Source Map) (stack traces). TypeScript . --enable-source-maps . Error.prepareStackTrace --enable-source-maps . Error.prepareStackTrace . const originalPrepareStackTrace = Error.prepareStackTrace; Error.prepareStackTrace = (error, trace) => { // Modify error and trace and format stack trace with // original Error.prepareStackTrace. return originalPrepareStackTrace(error, trace); }; Error.stack . Error.stack --enable-source-maps . --entry-url Node.js URL . ECMAScript . URL import.meta.url . node --entry-url 'file:///path/to/file.js?queryparams=work#and-hashes-too' node --entry-url 'file.ts?query#hash' node --entry-url 'data:text/javascript,console.log("Hello")' --env-file-if-exists=file --env-file . --env-file=file process.env . Node.js NODE_OPTIONS . . --env-file . . . node --env-file=.env --env-file=.development.env index.js - = : PORT=3000 # : # This is a comment PORT=3000 # This is also a comment : ` " '. . USERNAME="nodejs" # will result in `nodejs` as the value. : MULTI_LINE="THIS IS A MULTILINE" # will result in `THIS IS\nA MULTILINE` as the value. export : export USERNAME="nodejs" # will result in `nodejs` as the value. --env-file-if-exists . -e, --eval script . REPL script . script - = ( node --print --eval=-42) --eval . cmd.exe " . Powershell Git bash ' " . --no-strip-types . --experimental-addon-modules (import) .node. --experimental-config-file=path, --experimental-config-file Node.js . Node.js node.config.json . --experimental-config-file=path . --experimental-config-file path . --experimental-default-config-file --experimental-config-file . . JSON . vX.Y.Z $schema Node.js latest-vX.x . { "$schema": "https://nodejs.org/dist/vX.Y.Z/docs/node-config-schema.json", "nodeOptions": { "import": [ "amaro/strip" ], "watch-path": "src", "watch-preserve-output": true }, "test": { "test-isolation": "process" }, "watch": { "watch-preserve-output": true } } : o nodeOptions NODE_OPTIONS . o test watch permission . Node.js nodeVersion : { "nodeVersion": 25, "nodeOptions": { "watch-path": "src" } } configs . nodeVersion Node.js : { "$schema": "https://nodejs.org/dist/latest-v26.x/docs/node-config-schema.json", "configs": [ { "nodeVersion": 25, "config": { "$schema": "https://nodejs.org/dist/latest-v25.x/docs/node-config-schema.json", "nodeOptions": { "watch-path": "src" } } } ] } configs $schema configs . configs nodeVersion config . nodeVersion Node.js . Node.js ( --test --watch --permission) . . : { "test": { "test-isolation": "process" } } : node --test --test-isolation=process false : { "test": { "test": false, "test-isolation": "process" } } No-op . V8 . JSON Node.js . . . : node --import amaro/strip --watch-path=src --watch-preserve-output --test-isolation=process : o NODE_OPTIONS o NODE_OPTIONS Dotenv o NODE_OPTIONS --env-file . . . . --experimental-default-config-file --experimental-config-file . Node.js node.config.json . --experimental-eventsource EventSource (global scope). --experimental-ffi node:ffi . FFI . --experimental-import-meta-resolve URL import.meta.resolve() parentURL . import.meta.resolve . --experimental-import-text with { type: 'text' }. --experimental-inspector-network-resource (inspector). --experimental-loader=module (module) . module import . (Permission Model) --allow-worker . --experimental-network-inspection (Chrome DevTools). --experimental-package-map= (package map). path JSON . node --experimental-package-map=./package-map.json app.js . . Package maps . --experimental-print-required-tla ES await require() Node.js . --experimental-quic QUIC. --experimental-sea-config (blob) Node.js (single executable application) . . --experimental-shadow-realm ShadowRealm . --experimental-storage-inspection . --experimental-stream-iter node:stream/iter . --experimental-test-coverage node:test test runner . . . --experimental-test-module-mocks test runner . (Permission Model) --allow-worker . --experimental-test-tag-filter='' . tags test() it() suite() describe() . . (and/&& or/|| not/!) * . : not and or . Test tags . AND . test runner . --experimental-vfs node:vfs . --experimental-vm-modules ES node:vm . --experimental-wasi-unstable-preview1 (WASI) . --experimental-worker-inspection worker Chrome DevTools . --force-context-aware context-aware . --force-fips FIPS . OpenSSL --enable-fips . --force-node-api-uncaught-exceptions-policy uncaughtException Node-API . . . --frozen-intrinsics Array Object . . globalThis.Array . . --require --import . --heap-prof V8 . --heap-prof-dir . --heap-prof-name Heap.${yyyymmdd}.${hhmmss}.${pid}.${tid}.${seq}.heapprofile . $ node --heap-prof index.js $ ls *.heapprofile Heap.20190409.202950.15293.0.001.heapprofile --heap-prof-dir --heap-prof . --diagnostic-dir . --heap-prof-interval --heap-prof . 512 * 1024 . --heap-prof-name --heap-prof . --heapsnapshot-near-heap-limit=max_count V8 V8 . count ( Node.js max_count ). . Node.js . . Node.js max_count max_count Node.js max_count 0 . V8 ( V8 V8). . Node.js V8 . . $ node --max-old-space-size=100 --heapsnapshot-near-heap-limit=3 index.js Wrote snapshot to Heap.20200430.100036.49580.0.001.heapsnapshot Wrote snapshot to Heap.20200430.100037.49580.0.002.heapsnapshot Wrote snapshot to Heap.20200430.100038.49580.0.003.heapsnapshot <--- Last few GCs ---> [49580:0x110000000] 4826 ms: Mark-sweep 130.6 (147.8) -> 130.5 (147.8) MB, 27.4 / 0.0 ms (average mu = 0.126, current mu = 0.034) allocation failure scavenge might not succeed [49580:0x110000000] 4845 ms: Mark-sweep 130.6 (147.8) -> 130.6 (147.8) MB, 18.8 / 0.0 ms (average mu = 0.088, current mu = 0.031) allocation failure scavenge might not succeed <--- JS stacktrace ---> FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory --heapsnapshot-signal=signal Node.js . signal . . $ node --heapsnapshot-signal=SIGUSR2 index.js & $ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND node 1 5.5 6.1 787252 247004 ? Ssl 16:43 0:02 node --heapsnapshot-signal=SIGUSR2 index.js $ kill -USR2 1 $ ls Heap.20190718.133405.15554.0.001.heapsnapshot -h, --help node. . --icu-data-dir=file ICU . ( NODE_ICU_DATA .) --import=module . NODE_OPTIONS . ECMAScript . --require CommonJS . --require --import . (forked) . --input-type=type --eval STDIN CommonJS ES . "commonjs" "module" "module-typescript" "commonjs- typescript". "-typescript" --no-strip-types . --no-experimental-detect- module "commonjs" . --input-type Node.js : o CommonJS. o ES . o SyntaxError (types) . o ERR_UNSUPPORTED_TYPESCRIPT_SYNTAX ERR_INVALID_TYPESCRIPT_SYNTAX TypeScript CommonJS . o ES . --input- type=type --eval . REPL . --input-type=module --print --print ES . --insecure-http-parser HTTP . HTTP . : o HTTP. o HTTP. o Transfer-Encoding Content-Length. o Connection: close. o chunked. o \n \r\n. o \r\n (chunk). o \r\n. . . --inspect-brk=[[host:]port] host:port . host:port 127.0.0.1:9229 . 0 . Node.js V8 Inspector . host . --inspect-port=[host:]port host:port . SIGUSR1 . --disable-sigusr1 . 127.0.0.1 . 0 . host . --inspect-publish-uid=stderr,http URL . URL stderr /json/list http://host:port/json/list . --inspect-wait=[[host:]port] host:port . host:port 127.0.0.1:9229 . 0 . Node.js V8 Inspector . host . --inspect=[[host:]port] host:port . 127.0.0.1:9229 . 0 . V8 Chrome DevTools IDE Node.js . tcp Node.js Chrome DevTools . V8 Inspector . -i, --interactive REPL stdin . --jitless . . . --localstorage-file=file localStorage. localStorage . Node.js . --max-http-header-size=size HTTP . 16 KiB . --max-old-space-size-percentage=percentage (old space) V8 . --max-old-space-size . percentage 0 100 V8 . : --max-old-space-size . # Using 50% of available system memory node --max-old-space-size-percentage=50 index.js # Using 75% of available system memory node --max-old-space-size-percentage=75 index.js --network-family-autoselection-attempt-timeout . net.getDefaultAutoSelectFamilyAttemptTimeout() . --no-addons node-addons . --no-addons process.dlopen ++C . --no-async-context-frame Disables the use of AsyncLocalStorage backed by AsyncContextFrame and uses the prior implementation which relied on async_hooks. The previous model is retained for compatibility with Electron and for cases where the context flow may differ. However, if a difference in flow is found please report it. --no-deprecation Silence deprecation warnings. --no-experimental-detect-module Disable using syntax detection to determine module type. --no-experimental-global-navigator Disable exposition of Navigator API on the global scope. --no-experimental-repl-await await (top-level await) REPL . --no-experimental-require-module --no- require-module. --no-experimental-sqlite node:sqlite . --no-experimental-websocket . --no-experimental-webstorage Web Storage . --no-extra-info-on-fatal-exception (fatal exception) . --no-force-async-hooks-checks async_hooks . async_hooks . --no-global-search-paths $HOME/.node_modules $NODE_PATH . --no-network-family-autoselection . --no-require-module ES require() . ECMAScript require() . --no-strip-types (type-stripping) TypeScript . type-stripping TypeScript . --no-warnings ( ) . --node-memory-debug Node.js . Node.js . --openssl-config=file OpenSSL . FIPS OpenSSL 3 OpenSSL 1.1.1 FIPS . FIPS . OPENSSL_CONF . --openssl-legacy-provider (legacy provider) OpenSSL 3.0 . OSSL_PROVIDER-legacy . --openssl-shared-config OpenSSL openssl_conf OpenSSL. openssl.cnf OPENSSL_CONF --openssl-config . OpenSSL OpenSSL Node.js . OpenSSL Node.js nodejs_conf . --pending-deprecation (pending deprecation) . --pending-deprecation NODE_PENDING_DEPRECATION=1 . " " . --permission (Permission Model) . : o -- --allow-fs-read --allow-fs-write o -- --allow-net o -- --allow- child-process o -- --allow-worker o WASI -- --allow-wasi o -- --allow- addons o FFI -- --allow-ffi o OpenSSL STORE -- --allow- openssl-store --permission-audit (audit mode) . -- ERR_ACCESS_DENIED . node:diagnostics_channel . --permission . --allow-* . --permission . Permission Model . --permission --permission-audit --permission (enforce) . --preserve-symlinks (symbolic links) . Node.js . . peer dependencies moduleA moduleB peer dependency : {appDir} app | index.js | node_modules | moduleA -> {appDir}/moduleA | moduleB | index.js | package.json moduleA index.js package.json --preserve-symlinks Node.js peer dependencies . --preserve-symlinks . (Node.js ). --preserve-symlinks node --preserve-symlinks node_module/.bin/ . --preserve-symlinks-main . --preserve-symlinks-main (require.main) . --preserve-symlinks Node.js . --preserve-symlinks-main --preserve-symlinks --preserve-symlinks- main --preserve-symlinks . --preserve-symlinks . -p, --print script -e . --prof V8. --prof-process V8 --prof V8. --redirect-warnings=file stderr . . stderr . file . --diagnostic-dir . --report-compact JSON ( ) . --report-dir=directory, --report-directory=directory . --report-exclude-env --report-exclude-env environmentVariables . --report-exclude-network header.networkInterfaces . . --report-filename=filename . 'stdout' 'stderr' stdout stderr . --report-on-fatalerror ( Node.js ) . . --report-on-signal ( ) Node.js . --report-signal . --report-signal=signal ( ). SIGUSR2 . --report-uncaught-exception (uncaught exception) . . -r, --require module . require() . module node . --require --import . (forked) . --run "scripts" package.json . "command" . --run package.json . --run ./node_modules/.bin PATH node_modules ancestor- folder/node_modules/.bin . --run package.json . test package.json : $ node --run test . -- : $ node --run test -- --verbose --secure-heap-min=n --secure-heap --secure-heap-min . 2 . --secure-heap 2147483647 . . --secure-heap=n OpenSSL n . OpenSSL . . . . 2 . . . CRYPTO_secure_malloc_init . --snapshot-blob=path --build-snapshot --snapshot-blob . snapshot.blob . --build-snapshot --snapshot-blob . Node.js : o Node.js . o V8 CPU . Node.js 1 . --test Node.js . --watch-path --check --eval --interactive . . --test-concurrency CLI . --test- isolation 'none' . os.availableParallelism() - 1 . --test-coverage-branches=threshold . 1 . --test-coverage-exclude Excludes specific files from code coverage using a glob pattern, which can match both absolute and relative file paths. This option may be specified multiple times to exclude multiple glob patterns. If both --test-coverage-exclude and --test-coverage- include are provided, files must meet both criteria to be included in the coverage report. By default all the matching test files are excluded from the coverage report. Specifying this option will override the default behavior. --test-coverage-functions=threshold Require a minimum percent of covered functions. If code coverage does not reach the threshold specified, the process will exit with code 1. --test-coverage-include Includes specific files in code coverage using a glob pattern, which can match both absolute and relative file paths. This option may be specified multiple times to include multiple glob patterns. If both --test-coverage-exclude and --test-coverage- include are provided, files must meet both criteria to be included in the coverage report. --test-coverage-include-all Includes source files that were never loaded by the test run in the coverage report, where they are reported as having zero coverage. Candidate files are searched for in the current working directory, and are subject to the same --test-coverage- include and --test-coverage-exclude filtering as the rest of the report. --test-coverage-lines=threshold Require a minimum percent of covered lines. If code coverage does not reach the threshold specified, the process will exit with code 1. --test-force-exit Configures the test runner to exit the process once all known tests have finished executing even if the event loop would otherwise remain active. --test-global-setup=module Specify a module that will be evaluated before all tests are executed and can be used to setup global state or fixtures for tests. See the documentation on global setup and teardown for more details. --test-isolation=mode test runner . mode 'process' . mode 'none' . 'process' . --test . test runner . --test-name-pattern . . --test-name-pattern --test-skip-pattern . --test-only only . . --test-random-seed seed . . --test-randomize . 0 4294967295 . --watch --test-rerun-failures . --test-randomize . . . seed --test-random-seed . . --watch --test-rerun-failures . --test-reporter . . --test-reporter-destination . . --test-rerun-failures test runner . . . . --test-shard (shard) / : o index . o total . total index . : node --test --test-shard=1/3 node --test --test-shard=2/3 node --test --test-shard=3/3 --test-skip-pattern . . --test-name-pattern --test-skip-pattern . --test-timeout . . Infinity . --test-update-snapshots . --throw-deprecation . --title=title process.title . --tls-cipher-list=list TLS . Node.js () . --tls-keylog=file TLS . SSLKEYLOGFILE NSS ( Wireshark) TLS . --tls-max-v1.2 tls.DEFAULT_MAX_VERSION 'TLSv1.2'. TLSv1.3 . --tls-max-v1.3 tls.DEFAULT_MAX_VERSION 'TLSv1.3'. TLSv1.3 . --tls-min-v1.0 tls.DEFAULT_MIN_VERSION 'TLSv1'. TLS . --tls-min-v1.1 tls.DEFAULT_MIN_VERSION 'TLSv1.1'. TLS . --tls-min-v1.2 tls.DEFAULT_MIN_VERSION 'TLSv1.2'. 12.x Node.js . --tls-min-v1.3 tls.DEFAULT_MIN_VERSION 'TLSv1.3'. TLSv1.2 TLSv1.3 . --trace-deprecation . --trace-env Node.js stderr : o Node.js . o process.env.KEY = "SOME VALUE". o process.env.KEY. o Object.defineProperty(process.env, 'KEY', {...}). o Object.hasOwn(process.env, 'KEY') process.env.hasOwnProperty('KEY') 'KEY' in process.env. o delete process.env.KEY. o ...process.env Object.keys(process.env). . . --trace-env-js-stack --trace-env-native-stack . --trace-env-js-stack --trace-env . --trace-env-native-stack --trace-env . --trace-event-categories --trace-events-enabled . --trace-event-file-pattern ${rotation} ${pid} . --trace-events-enabled . --trace-exit process.exit() . --trace-require-module=mode ECMAScript require() . mode all . mode no-node- modules node_modules . --trace-sigint SIGINT . --trace-sync-io / . --trace-tls TLS stderr . TLS . --trace-uncaught Error Node.js ( Error ). . --trace-warnings ( ). --track-heap-objects . --unhandled-rejections=mode (unhandled rejection) . : o throw: unhandledRejection. . . o strict: . unhandledRejection . o warn: unhandledRejection . o warn-with-error-code: unhandledRejection. 1 . o none: . ES . --use-bundled-ca, --use-openssl-ca CA Node.js CA OpenSSL. . CA Node.js CA . . OpenSSL . BSD . CA OpenSSL OpenSSL . SSL_CERT_DIR SSL_CERT_FILE . --use-env-proxy Node.js HTTP_PROXY HTTPS_PROXY NO_PROXY . . . . Built-in Proxy Support . NODE_USE_ENV_PROXY=1 . --use-env-proxy . --use-largepages=mode Node.js . Node.js 4 KiB 2 MiB . mode : o off: . . o on: . . o silent: . . --use-system-ca CA --use-bundled-ca NODE_EXTRA_CA_CERTS . macOS OpenSSL --use-openssl-ca . macOS Chromium : macOS : o (Default and System Keychains).Bl -bullet o :.Bl -bullet o "When using this certificate" "Always Trust" o "Secure Sockets Layer (SSL)" "Always Trust" . "X.509 Basic Policy" "Always Trust" . : o ( certlm.msc).Bl -bullet o :.Bl -bullet o (Trusted Root Certification Authorities) o (Trusted People) o Enterprise Trust -> Enterprise -> Trusted Root Certification Authorities o Enterprise Trust -> Enterprise -> Trusted People o Enterprise Trust -> Group Policy -> Trusted Root Certification Authorities o Enterprise Trust -> Group Policy -> Trusted People ( certmgr.msc).Bl -bullet :.Bl -bullet Enterprise Trust -> Group Policy -> Trusted Root Certification Authorities macOS Node.js TLS . / . Node.js ( /etc/ssl/cert.pem) ( /etc/ssl/certs) OpenSSL Node.js . . OpenSSL ( SSL_CERT_FILE SSL_CERT_DIR OpenSSL Node.js) . . V8. V8 . 0 Node.js . . CPU . node. Node.js (watch mode). Node.js . . --watch-path . --check --eval --interactive REPL . : --watch --run --run . Node.js 9 . node --watch index.js . node --watch --watch-kill-signal SIGINT test.js Node.js . Node.js . require import --watch . --check --eval --interactive --test REPL . : --watch-path --watch --run --run . node --watch-path=./src --watch-path=./tests index.js macOS . ERR_FEATURE_UNAVAILABLE_ON_PLATFORM . . node --watch --watch-preserve-output test.js Buffer . (ENVIRONMENT) FORCE_COLOR [1, 2, 3] FORCE_COLOR ANSI . : o 1 true '' o 2 o 3 . FORCE_COLOR NO_COLOR NODE_DISABLE_COLORS . . NODE_COMPILE_CACHE dir Node.js . . NODE_COMPILE_CACHE_PORTABLE 1 1 ( ). NODE_COMPILE_CACHE_READONLY 1 1 : . NODE_DEBUG module[,] ',' . NODE_DEBUG_NATIVE module[,] ',' ++C . NODE_DISABLE_COLORS 1 REPL . NODE_DISABLE_COMPILE_CACHE 1 Node.js . . NODE_EXTRA_CA_CERTS file ( VeriSign) file . PEM . () process.emitWarning() . ca TLS HTTPS . node setuid root . NODE_EXTRA_CA_CERTS Node.js . process.env.NODE_EXTRA_CA_CERTS . NODE_ICU_DATA file ICU ( Intl). small-icu . NODE_NO_WARNINGS 1 1 . NODE_OPTIONS options... . options... options... . Node.js -p . : NODE_OPTIONS='--require "./my path/file.js"' NODE_OPTIONS : # The inspector will be available on port 5555 NODE_OPTIONS='--inspect=localhost:4444' node --inspect=localhost:5555 NODE_OPTIONS : NODE_OPTIONS='--require "./a.js"' node --require "./b.js" # is equivalent to: node --require "./a.js" --require "./b.js" Node.js . --XX --no-XX : o --allow-addons o --allow-child-process o --allow-ffi o --allow-fs-read o --allow-fs-write o --allow-inspector o --allow-net o --allow-openssl-store o --allow-wasi o --allow-worker o --conditions, -C o --cpu-prof-dir o --cpu-prof-interval o --cpu-prof-name o --cpu-prof o --diagnostic-dir o --disable-proto o --disable-sigusr1 o --disable-warning o --disable-wasm-trap-handler o --dns-result-order o --enable-fips o --enable-network-family-autoselection o --enable-source-maps o --entry-url o --experimental-abortcontroller o --experimental-addon-modules o --experimental-detect-module o --experimental-eventsource o --experimental-ffi o --experimental-import-meta-resolve o --experimental-import-text o --experimental-json-modules o --experimental-loader o --experimental-modules o --experimental-package-map o --experimental-print-required-tla o --experimental-quic o --experimental-require-module o --experimental-shadow-realm o --experimental-specifier-resolution o --experimental-stream-iter o --experimental-test-isolation o --experimental-top-level-await o --experimental-vfs o --experimental-vm-modules o --experimental-wasi-unstable-preview1 o --force-context-aware o --force-fips o --force-node-api-uncaught-exceptions-policy o --frozen-intrinsics o --heap-prof-dir o --heap-prof-interval o --heap-prof-name o --heap-prof o --heapsnapshot-near-heap-limit o --heapsnapshot-signal o --http-parser o --icu-data-dir o --import o --input-type o --insecure-http-parser o --inspect-brk o --inspect-port, --debug-port o --inspect-publish-uid o --inspect-wait o --inspect o --localstorage-file o --max-http-header-size o --max-old-space-size-percentage o --network-family-autoselection-attempt-timeout o --no-addons o --no-async-context-frame o --no-deprecation o --no-experimental-global-navigator o --no-experimental-repl-await o --no-experimental-sqlite o --no-experimental-strip-types o --no-experimental-websocket o --no-experimental-webstorage o --no-extra-info-on-fatal-exception o --no-force-async-hooks-checks o --no-global-search-paths o --no-network-family-autoselection o --no-strip-types o --no-warnings o --no-webstorage o --node-memory-debug o --openssl-config o --openssl-legacy-provider o --openssl-shared-config o --pending-deprecation o --permission-audit o --permission o --preserve-symlinks-main o --preserve-symlinks o --prof-process o --redirect-warnings o --report-compact o --report-dir, --report-directory o --report-exclude-env o --report-exclude-network o --report-filename o --report-on-fatalerror o --report-on-signal o --report-signal o --report-uncaught-exception o --require-module o --require, -r o --secure-heap-min o --secure-heap o --snapshot-blob o --test-coverage-branches o --test-coverage-exclude o --test-coverage-functions o --test-coverage-include-all o --test-coverage-include o --test-coverage-lines o --test-global-setup o --test-isolation o --test-name-pattern o --test-only o --test-random-seed o --test-randomize o --test-reporter-destination o --test-reporter o --test-rerun-failures o --test-shard o --test-skip-pattern o --throw-deprecation o --title o --tls-cipher-list o --tls-keylog o --tls-max-v1.2 o --tls-max-v1.3 o --tls-min-v1.0 o --tls-min-v1.1 o --tls-min-v1.2 o --tls-min-v1.3 o --trace-deprecation o --trace-env-js-stack o --trace-env-native-stack o --trace-env o --trace-event-categories o --trace-event-file-pattern o --trace-events-enabled o --trace-exit o --trace-require-module o --trace-sigint o --trace-sync-io o --trace-tls o --trace-uncaught o --trace-warnings o --track-heap-objects o --unhandled-rejections o --use-bundled-ca o --use-env-proxy o --use-largepages o --use-openssl-ca o --use-system-ca o --v8-pool-size o --watch-kill-signal o --watch-path o --watch-preserve-output o --watch o --zero-fill-buffers V8 options that are allowed are: o --abort-on-uncaught-exception o --disallow-code-generation-from-strings o --enable-etw-stack-walking o --expose-gc o --interpreted-frames-native-stack o --jitless o --max-heap-size o --max-old-space-size o --max-semi-space-size o --perf-basic-prof-only-functions o --perf-basic-prof o --perf-prof-unwinding-info o --perf-prof o --stack-trace-limit --perf-basic-prof-only-functions --perf-basic-prof --perf-prof-unwinding-info --perf-prof . --enable-etw-stack-walking . NODE_PATH path[:] ':' . ';' . NODE_PENDING_DEPRECATION 1 1 . --pending-deprecation NODE_PENDING_DEPRECATION=1 . " " . NODE_PENDING_PIPE_INSTANCES instances . . NODE_PRESERVE_SYMLINKS 1 1 . NODE_REDIRECT_WARNINGS file stderr . . stderr . --redirect-warnings=file . NODE_REPL_EXTERNAL_MODULE file Node.js REPL . ('') REPL . NODE_REPL_HISTORY file REPL. ~/.node_repl_history . ('' ' ') REPL . NODE_SKIP_PLATFORM_CHECK value value '1' Node.js . Node.js . . NODE_TEST_CONTEXT value value 'child' test reporter TAP stdout . Node.js . NODE_TLS_REJECT_UNAUTHORIZED value value '0' TLS . TLS HTTPS . . NODE_USE_ENV_PROXY 1 Node.js HTTP_PROXY HTTPS_PROXY NO_PROXY . . . . Built-in Proxy Support . --use-env-proxy . --use-env-proxy . NODE_USE_SYSTEM_CA 1 CA --use- bundled-ca NODE_EXTRA_CA_CERTS . --use-system-ca . --use-system-ca . NODE_V8_COVERAGE dir Node.js V8 Source Map ( JSON coverage ). NODE_V8_COVERAGE child_process.spawn() . NODE_V8_COVERAGE . NO_COLOR NO_COLOR NODE_DISABLE_COLORS . . OPENSSL_CONF file OpenSSL . FIPS . Node.js OpenSSL . /etc/ssl Node.js . FIPS . --openssl-config . SSL_CERT_DIR dir --use-openssl-ca --use-system-ca macOS OpenSSL . OpenSSL node . SSL_CERT_FILE file --use-openssl-ca --use-system-ca macOS OpenSSL . OpenSSL node . TZ TZ . Node.js TZ ( 'Etc/UTC' 'Europe/Paris' 'America/New_York') . . $ TZ=Europe/Dublin node -pe "new Date().toString()" Wed May 12 2021 20:30:48 GMT+0100 (Irish Standard Time) UV_THREADPOOL_SIZE size libuv size . Node.js libuv node . Node.js : o fs o crypto.pbkdf2() crypto.scrypt() crypto.randomBytes() crypto.randomFill() crypto.generateKeyPair() o dns.lookup() o zlib libuv ( ) libuv . libuv 'UV_THREADPOOL_SIZE' 4 ( ) . process.env.UV_THREADPOOL_SIZE=size . libuv . (BUGS) GitHub Issues : https://github.com/nodejs/node/issues (COPYRIGHT) Node.js . MIT . . : https://github.com/nodejs/node/blob/HEAD/LICENSE (SEE ALSO) : https://nodejs.org : https://nodejs.org/api : https://github.com/nodejs/node October 25, 2026