Если вы не знаете, в nodeJS у нас есть два разных способа импорта и экспорта модулей из npm и других файлов, по умолчанию в nodeJS называется CommonJS (требуется синтаксис), и до сих пор это стандартный способ, но поскольку узел 13.2v был выпущены, они теперь поддерживают другой способ включения модулей, который является модулями ES, так в чем разница и какой из них вы должны использовать?

если мы проверим производительность, мы не сможем сказать, потому что она зависит от различных факторов, включая размер и сложность кода, среду и условия сети.

в CommonJS модули загружаются синхронно и кэшируются, что может ускорить их работу в определенных сценариях, однако это также означает, что модули CommonJS могут блокировать основной поток, вызывая медленную загрузку больших модулей.

Модули ES, с другой стороны, загружаются динамически и асинхронно, что может привести к ускорению загрузки небольших модулей и повышению производительности в определенных сценариях.

лучше другого не найдешь, но есть резон использовать модуль ES. если мы посмотрим на синтаксис модуля ES, он намного понятнее, чем синтаксис require. а также будущее говорит нам, что они стандартизируют его с интерфейсной структурой, чтобы вместо этого использовать импорт, если мы посмотрим на современные среды выполнения javascript, такие как Deno или Bun, они заменены на синтаксис импорта.

поэтому, если вы хотите попробовать это самостоятельно и посмотреть, насколько четким будет ваш код, вы можете преобразовать nodeJS для использования импорта двумя способами: либо преобразовав расширение файла в «.mjs» (app.js => app.mjs).< br /> или обычный способ преобразовать все файлы для использования импорта — изменить свойство «type» файла package.json на «module» вместо «commonJS».

вот пример использования импорта в nodeJS: