Встречается на собеседованиях • сегодня

Насколько хорошо поддерживаются ES модули в Node.js

ES модули (ESM) в Node.js стабильно поддерживаются с версии 12+ (под флагом --experimental-modules) и полностью стабильны с Node.js 14+.

Особенности:

  • Файлы должны иметь расширение .mjs или "type": "module" в package.json.
  • Импорт требует указания полного пути (включая расширение).
  • require() не работает в ESM, а import не работает в CommonJS.

Пример:

javascript
// package.json
{
  "type": "module"
}
javascript
// index.mjs
import { foo } from './module.mjs';
console.log(foo);

Совместимость:

  • Можно использовать import/export вместе с динамическим import().
  • Есть утилиты для взаимодействия между CommonJS и ESM (createRequire).

Поддержка почти полная, но могут быть нюансы с некоторыми npm-пакетами.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы