Задать вопрос
@Maksum70
СТудент

В чем отличие модулей js в браузере (через тэг html) или в nodejs?

Подскажите, какая разница между модулями js если мы подключаем js модули в верстке html или если мы напрямую запускаем js файл, который импортирует модули, через node?
и если не сложно, рассказать, где есть commonJS , а где есть requireJS, а то путаюсь постоянно между ними
  • Вопрос задан
  • 282 просмотра
Подписаться 1 Средний Комментировать
Решения вопроса 1
@Sun_Day
Разные среды разработки, разница в стиле разработки, если коротко.

Тут все немного запутанно насчет Require и Common.

Это модульные системы.

До выхода стандарта ES6, когда в js по сути появилась модульная система из коробки, модули реализовывались в основном с помощью двух стандартов - это CommonJS и AMD.

CommonJS - это стандарт по модульной системе в js вне браузера, для node.js. В node.js тоже есть встроенная функция require, есть module.exports. Все это реализация стандарта CommonJS.
Nodejs сейчас es6 модульную систему поддерживает(import/export). То есть, официальный синтаксис джаваскрипта. И если коротко, то с выходом ES6, CommonJS немножко потерял свою былую целесообразность, поскольку появился официальный синтаксис javascript, который это реализовывает. Раньше в js, в рамках официального синтаксиса такого не было.

AMD - это стандарт, который отпочковался от CommonJS, разработан для асинхронной загрузки модулей. Использует функцию define, которой описывается модуль и require, которой он подключается. Расшифровывается как Асинхронное определение модуля.

RequireJS - это библиотека для поддержки асинхронных модулей в браузерах. То есть она для браузеров. Это не стандарт. Это реализация стандарта AMD.

Объяснил как мог, не знаю как еще проще).
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы