Snelle referentie

Node.js Core API Spiekbrief

Een handige referentie voor Node.js runtime-API's: globale objecten, uitvoeren en starten van dochterprocessen, inspectieformattering en streams.

· Gepubliceerd

Node.js is een JavaScript-runtime gebouwd op de V8-engine van Chrome die asynchrone, gebeurtenisgestuurde code op servers uitvoert.

Globale Variabelen

Veelgebruikte globale variabelen op moduleniveau in CommonJS:

__filename; // Absoluut bestandspad van de huidige module
__dirname;  // Absoluut mappad van de huidige module

Subprocessen (Child Processes)

child_process.exec()

Buffert procesuitvoer en geeft stdout/stderr door aan een callback (ideaal voor kleine scripts):

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 procesgegevens zonder buffering (ideaal voor langlopende processen en grote uitvoer):

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

// stdin/stdout/stderr direct overnemen in de terminal
const child = spawn('npm', ['test'], { stdio: 'inherit' });

child.on('error', (err) => {
  if (err.code === 'ENOENT') console.error('Uitvoerbaar bestand niet gevonden');
  if (err.code === 'EACCES') console.error('Toegang geweigerd');
});

child.on('exit', (code, signal) => {
  console.log(`Proces afgesloten met code ${code}`);
});

Formattering en Inspectie (util.inspect)

const util = require('util');

// Complexe objecten diepgaand inspecteren met syntaxmarkering
const output = util.inspect(complexObject, {
  showHidden: false,
  depth: null,
  colors: true
});

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

Referenties

Verwante onderwerpen