Menu
CoddyTech

Variables d’environnement

Fait partie de la section Les bases de Node.js du Journey Node.js de Coddy. Leçon 5 sur 24.

Certains paramètres dépendent de la personne qui lance un programme, et non des mots qu’elle saisit après celui-ci.

Les variables d’environnement sont des chaînes nommées que le shell transmet à chaque programme. Node les place dans process.env. Une variable non définie vaut undefined, donc ?? lui donne une valeur par défaut.

// CITY=Oslo node weather.js
const city = process.env.CITY ?? 'Lisbon';
console.log(`Weather for ${city}`);

Sur un ordinateur portable, vous pouvez en définir une pour une seule exécution en l’écrivant avant la commande : CITY=Oslo node weather.js affiche Weather for Oslo, et node weather.js tout seul affiche Lisbon. Les noms sont sensibles à la casse. Le terminal à côté de votre code ne définit aucune variable, il affiche donc toujours la valeur par défaut.

challenge icon

Défi

Facile
  • list affiche d’abord un titre : Notes for <NOTES_OWNER>, ou Notes for you lorsque la variable n’est pas définie.
  • No notes yet reste sur la ligne suivante.

Exécutez node notes.js list. Les vérifications l’exécutent également avec NOTES_OWNER=Ada node notes.js list.

Essayez vous-même

// Votre outil de prise de notes commence ici.
const [command, ...words] = process.argv.slice(2);
const text = words.join(' ');

if (command === 'add') {
    console.log(`Adding: ${text}`);
} else if (command === 'list') {
    console.log('No notes yet');
} else {
    if (command) {
        console.error(`Unknown command: ${command}`);
    }
    console.error('Usage: node notes.js <command> [words]');
    process.exit(1);
}

Toutes les leçons de Les bases de Node.js