я подсмотрел в некотором коде следующее:требующие Singleton Инстансы в узле
var Log = require('log');
// This creates a singleton instance
module.exports = new Log('info');
Моя первая реакция была «не так, что это синглтона», но я помню статью, в которой изложил, как Node.js делает require()
заявления сказал что-то о кэшировании, требует утверждения и использует их в последующих вызовах.
Итак, в основном, мой вопрос, экспортирует new Object()
, фактически создавая синглтон за кулисами?
Я знаю, что существуют другие способы создания синглетонов в JavaScript, но это похоже на довольно удобный способ сделать это внутри узла (если он действительно работает).
Вид одноразового использования, в каких ситуациях кеш недействителен? Спасибо за информацию о подмодулях, я об этом не думал. –
[Нашел ответ на это.] (Http://stackoverflow.com/questions/9210542/node-js-require-cache-possible-to-invalidate) –