Опишите шаблон проектирования модуля JS.

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

Этот вопрос может означать две вещи. В текущем состоянии JavaScript мы уже получаем поддержку модулей с ES6. И синтаксис тот, к которому мы уже привыкли:

Целью модулей ECMAScript 6 было создание формата, который удовлетворил бы как пользователей CommonJS, так и AMD:

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

Импорт модулей поднимается (внутренне перемещается в начало текущей области). Следовательно, не имеет значения, где вы упомянули их в модуле, и следующий код работает без каких-либо проблем.

Как я уже упоминал ранее, это также может быть вопрос о том, как бы вы построили целостный модуль в его собственной структуре (будь то файл, объект и т. Д.). В этом случае модуль может быть определен в собственном «связном файле»: