Переменные окружения
Часть раздела Основы Node.js путешествия по Node.js на Coddy. Урок 5 из 24.
Некоторые настройки относятся к человеку, запускающему программу, а не к словам, которые он вводит после неё.
Переменные окружения — это именованные строки, которые оболочка передаёт каждой программе. Node помещает их в process.env. Если переменная не задана, её значение — undefined, поэтому ?? задаёт значение по умолчанию.
// CITY=Oslo node weather.js
const city = process.env.CITY ?? 'Lisbon';
console.log(`Weather for ${city}`);На ноутбуке можно задать переменную для одного запуска, указав её перед командой: CITY=Oslo node weather.js выведет Weather for Oslo, а обычная команда node weather.js выведет Lisbon. Имена чувствительны к регистру. Терминал рядом с вашим кодом не задаёт переменных, поэтому всегда показывает значение по умолчанию.
Задание
Легкоlistсначала выводит заголовок:Notes for <NOTES_OWNER>илиNotes for you, если переменная не задана.No notes yetостается на следующей строке.
Запусти node notes.js list. Проверки также запускают команду NOTES_OWNER=Ada node notes.js list.
Попробуйте сами
// Здесь начинается ваш инструмент для заметок.
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);
}
Все уроки раздела Основы Node.js
1Запуск JavaScript в Node
Знакомство с NodeАргументы командной строкиКоманды