クイックリファレンス

Node.js コア API チートシート

Node.js コアランタイム API のリファレンス:グローバルオブジェクト、子プロセスの実行と生成、inspect 書式設定、プロセスストリーム。

· 公開日

Node.js は Chrome の V8 エンジン上に構築された JavaScript ランタイムであり、サーバー上で非同期イベント駆動型コードを実行します。

グローバル変数

CommonJS における代表的なモジュールレベルのグローバル変数:

__filename; // 現在のモジュールの絶対ファイルパス
__dirname;  // 現在のモジュールの絶対ディレクトリパス

子プロセス (Child Processes)

child_process.exec()

プロセスの出力をバッファリングし、stdout/stderr をコールバックに渡します(小規模スクリプト向け):

const { exec } = require('child_process');

exec('ls -la | grep .js', (error, stdout, stderr) => {
  if (error) {
    console.error(`Execution error: ${error.message}`);
    return;
  }
  console.log(`Output: ${stdout}`);
});

child_process.spawn()

バッファリングなしでプロセスデータをストリーミングします(長時間実行プロセスや大規模な出力向け):

const { spawn } = require('child_process');

// ターミナルの stdin/stdout/stderr を直接継承
const child = spawn('npm', ['test'], { stdio: 'inherit' });

child.on('error', (err) => {
  if (err.code === 'ENOENT') console.error('実行可能ファイルが見つかりません');
  if (err.code === 'EACCES') console.error('アクセス権限がありません');
});

child.on('exit', (code, signal) => {
  console.log(`プロセスが終了しました。終了コード: ${code}`);
});

書式設定とオブジェクト検査 (util.inspect)

const util = require('util');

// シンタックスハイライト付きで複雑なオブジェクトを詳細に検査
const output = util.inspect(complexObject, {
  showHidden: false,
  depth: null,
  colors: true
});

process.stdout.write(output + '\n');

関連リファレンス

関連テーマ