Тут зібрані офіційні матеріали по функціям, налаштуванням https://nodejs.org/uk/learn/getting-started/introduction-to-nodejs
Node.js — це середовище виконання JavaScript з відкритим вихідним кодом та підтримкою кількох платформ.
Це популярний інструмент майже для будь-якого типу проєктів!
Node.js використовує движок JavaScript V8 — ядро браузера Google Chrome — поза браузером. Це дозволяє Node.js працювати з високою продуктивністю.
Додаток Node.js працює в одному процесі, не створюючи новий потік для кожного запиту. У стандартній бібліотеці Node.js доступні асинхронні інструменти вводу/виводу (I/O), які запобігають блокуванню коду. Як правило, бібліотеки в Node.js написані у неблокуючому стилі, тому блокуюча поведінка — це радше виняток, а не правило.
Коли Node.js виконує I/O-операцію (наприклад, зчитування з мережі, бази даних або файлової системи), він не блокує потік і не витрачає ресурси, очікуючи відповідь. Замість цього Node.js продовжує обробку після отримання результату.
Це дозволяє Node.js обробляти тисячі одночасних з’єднань за допомогою одного сервера, без потреби керування потоками, які часто стають джерелом помилок.
Node.js має унікальну перевагу:
Мільйони фронтенд-розробників, які пишуть JavaScript для браузера, можуть використовувати ті ж знання для написання серверного коду, не вивчаючи нову мову програмування.
У Node.js можна використовувати сучасні ECMAScript-стандарти
(ES6+), не очікуючи, поки всі користувачі оновлять свої браузери.
Ти сам/сама вирішуєш, яку версію Node.js встановити, і можеш активувати експериментальні можливості за допомогою спеціальних флагів.
Приклад програми на Node.js
Найпоширеніший приклад “Hello World” у Node.js — це вебсервер:
jsCopyEditconst { createServer } = require('node:http');
const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello World');
});
server.listen(port, hostname, () => {
console.log(`Server running at http://${hostname}:${port}/`);
});
Як запустити:
- Збережи цей код у файл
server.js
. - У терміналі запусти: bashCopyEdit
node server.js
Якщо ти використовуєш модульний (ESM) варіант з import
, збережи його як server.mjs
і запусти так само через node
.
Пояснення коду:
require('node:http')
— підключає стандартний модуль http з бібліотеки Node.js.createServer()
— створює новий HTTP-сервер.server.listen(...)
— запускає сервер на вказаній адресі та порту.- Колбек повідомляє в термінал, що сервер запущено.
- При кожному новому запиті сервер отримує об’єкти:
req
(вхідний запит)res
(відповідь на запит)
У відповідь сервер:
- Встановлює статус: jsCopyEdit
res.statusCode = 200;
- Додає заголовок: jsCopyEdit
res.setHeader('Content-Type', 'text/plain');
- Завершує відповідь та надсилає текст: jsCopyEdit
res.end('Hello World\n');
Якщо ти ще не встановив Node.js — обов’язково завантаж його з https://nodejs.org і спробуй цей приклад!