Что такое модуль и чем отличается модуль.exports от экспорта?

Я читаю на эту тему в течение нескольких часов и простоне нашел ничего, что могло бы помочь сделать эту палку.

модуль - это просто объект в узле с несколькими свойствами, одно - это свойство export, которое ссылается на объект.

'экспорт переменная

var exports = module.exports

Это переменная, указывающая на объект, на который ссылается module.exports.

То, с чем я борюсь, это визуализировать, что это за модуль. Я знаю это's объект, но есть только один?

Я знаю это неТочный способ, которым узел реализует модуль, но я визуализирую его, выглядя примерно так:

var module = {}

module.exports = {}

// now module has a property module.exports

var exports = module.exports

Теперь из всего, что я читал, если вы назначите что-то для module.export = 'хуг»

Это будет держать значениехуг», Это теряет оригинальный объект? Кроме того, если я назначу что-то еще для module.exports в том же файле, будет ли оно заменено новым значением?

EX: 

// file = app.js

module.export = 'hello'
module.export = 'bye'

// file = newApp.js

require(./app);

какова стоимость модуля? Я переопределяю один и тот же объект модуля или их несколько?

Ответы на вопрос(3)

Ваш ответ на вопрос