Первая программа на JavaScript и запуск ее на NodeJS
Введение
В этом разделе вы создадите свою первую программу на JavaScript и запустите её в среде Node.js. Мы разберём минимально необходимую структуру проекта, способы запуска, передачу аргументов, чтение переменных окружения и базовые приёмы вывода логов.
Цель — получить рабочее понимание цикла: «написал скрипт → запустил через CLI → увидел результат → зафиксировал настройки в package.json».
Подготовка окружения
Проверка установки Node.js и npm
Убедитесь, что установлены node и npm — стандартный менеджер пакетов Node.js.
node -v
# Вывод: v22.0.0
npm -v
# Вывод: 10.0.0
Создание рабочей директории и инициализация проекта
Создайте папку проекта, инициализируйте package.json и откройте проект в любимом редакторе.
mkdir hello-node
cd hello-node
npm init -y
# Вывод: создан файл package.json со значениями по умолчанию
Первая программа (CommonJS по умолчанию)
По умолчанию Node.js использует систему модулей CommonJS (если в package.json не указано иное). Создадим файл index.js и выведем текст.
Скрипт можно сделать исполняемым в Unix-системах при помощи строки shebang. Добавьте её в начало файла и дайте права на исполнение:
#!/usr/bin/env node
console.log('Hello from executable!');
// Вывод: Hello from executable!
chmod +x index.js
./index.js
# Вывод: Hello from executable!
Аргументы командной строки
Доступ к аргументам запуска осуществляется через process.argv. Первые два элемента — путь к Node и путь к скрипту; полезные аргументы начинаются с индекса 2.
node index.js --name Alex
# Вывод: Args: --name, Alex
Переменные окружения
Конфигурацию удобно передавать через переменные окружения, доступные как process.env. Используйте «разумные значения по умолчанию».
const port = process.env.PORT ?? 3000;
console.log(`PORT = ${port}`);
// Вывод (пример): PORT = 3000
PORT=8080 node index.js
# Вывод: PORT = 8080
Логи и коды возврата
Для информационных сообщений используйте console.log (пишет в stdout), для ошибок — console.error (пишет в stderr). Код возврата процесса задаётся process.exit().
console.log('info');
// Вывод: info
console.error('error');
// Вывод: error
process.exit(0);
Скрипты npm для запуска
Добавьте скрипты в package.json, чтобы унифицировать команды запуска.