Kurzreferenz

Node.js Kern-API Spickzettel

Ein praktischer Leitfaden fuer die wichtigsten Node.js-Laufzeit-APIs: globale Objekte, Ausfuehren und Spawnen von Kindprozessen, Formatierung und Streams.

· Veröffentlicht

Node.js ist eine JavaScript-Laufzeitumgebung auf Basis der V8-Engine von Chrome, die asynchronen, ereignisgesteuerten Code auf Servern ausfuehrt.

Globale Variablen

Haeufige globale Variablen auf Modulebene in CommonJS:

__filename; // Absoluter Dateipfad des aktuellen Moduls
__dirname;  // Absoluter Verzeichnispfad des aktuellen Moduls

Kindprozesse (Child Processes)

child_process.exec()

Puffert die Prozessausgabe und uebergibt stdout/stderr an einen Callback (ideal fuer kleine Skripte):

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()

Streamt Prozessdaten ungepuffert (ideal fuer langlebige Prozesse und grosse Datenmengen):

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

// stdin/stdout/stderr direkt im Terminal erben
const child = spawn('npm', ['test'], { stdio: 'inherit' });

child.on('error', (err) => {
  if (err.code === 'ENOENT') console.error('Ausfuehrbare Datei nicht gefunden');
  if (err.code === 'EACCES') console.error('Zugriff verweigert');
});

child.on('exit', (code, signal) => {
  console.log(`Prozess beendet mit Code ${code}`);
});

Formatierung und Inspektion (util.inspect)

const util = require('util');

// Komplexe Objekte mit Syntax-Highlighting tiefgehend inspizieren
const output = util.inspect(complexObject, {
  showHidden: false,
  depth: null,
  colors: true
});

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

Referenzen

Verwandte Themen