Модуль Node.js · Node.js module

BackendЧастота употребления: очень высокая· Сложность: 3/5· Актуальность: 5/5· Тренд: стабильно

Модуль Node.js — изолированный файл или пакет, экспортирующий значения через CommonJS (module.exports/require) или ES-модули (export/import).

Подробно

Модульная система Node.js позволяет разбивать код на файлы, связывать их между собой и переиспользовать сторонние пакеты из npm. Исторически используется CommonJS: каждый файл получает объекты module, exports, require, а также __dirname и __filename, а результат первого подключения кэшируется. Начиная с Node.js 12+ полноценно поддерживаются ES-модули с import/export, включаемые полем "type": "module" в package.json или расширением .mjs. Разрешение путей работает по алгоритму Node resolution: сначала core-модули (node:fs, node:path), затем node_modules, затем относительные пути, с учётом поля exports в package.json.

Примеры употребления

  • `const fs = require('node:fs');` — подключение встроенного модуля в CommonJS.
  • `import { readFile } from 'node:fs/promises';` — то же в ES-модуле.
  • Добавь `"type": "module"` в package.json, чтобы все .js файлы пакета трактовались как ESM.
  • Модуль кэшируется при первом require — повторный require вернёт тот же объект.
#node.js #commonjs #esm #npm

Источники