Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Оглавление

Запуск программы

Программа на Node.js — обычный файл с расширением .js. Чтобы её выполнить, команде node передают имя этого файла. Node.js прочитает код, выполнит его сверху вниз и завершится, когда делать будет нечего.

Папка проекта

Создайте папку для блога и перейдите в неё:

mkdir blog
cd blog

Все команды курса выполняются из этой папки.

Первая программа

Создайте в папке blog файл app.js:

console.log('Привет из Node.js!');

Запустите его:

node app.js

В терминале появится строка «Привет из Node.js!». В Node.js console.log() пишет в терминал, а не в консоль браузера.

Программа завершается сама

Node.js работает, пока у программы есть дела: незавершённые таймеры, открытые соединения, ожидающие промисы. Как только их не осталось, процесс заканчивается:

console.log('Начало');
 
setTimeout(() => {
  console.log('Прошла секунда');
}, 1000);
 
console.log('Конец кода');

Вы увидите «Начало» и «Конец кода», через секунду — «Прошла секунда», после чего программа завершится. Сервер, наоборот, ждёт запросы бесконечно — его останавливают сочетанием Ctrl+C.

Перезапуск при изменениях

Чтобы не запускать программу заново после каждой правки, добавьте флаг --watch:

node --watch app.js

Node.js выполнит файл и будет следить за ним и за подключёнными модулями. После сохранения программа перезапустится сама. Это удобно при разработке сервера.

Несколько полезных команд

КомандаЧто делает
node app.jsВыполняет файл
node --watch app.jsВыполняет и перезапускает при изменениях
node -e "console.log(2 + 2)"Выполняет код из строки
node --helpПоказывает все флаги

Частая ошибка

Команду нужно запускать из папки, где лежит файл. Иначе Node.js его не найдёт:

Error: Cannot find module 'C:\Users\anna\app.js'

Проверьте текущую папку командой pwd (в Windows PowerShell она тоже работает) и перейдите в папку проекта через cd.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.