8
我看到這種模式,這些天實施的NodeJS,在那裏我們有我的模塊下面的代碼:ES6類和module.exports
class Foo {
bar() {
console.log('bar');
}
}
module.exports = Foo;
然後當我做了要求,最後說,新的創造類的一個實例。
var Foo = require(./foo);
var myFoo = new Foo();
myFoo.bar();
根據我的這種模式將不斷創建類Foo的多個實例,每次調用它。
其他模式可能是什麼,我用我的foo.js會在哪裏。
module.exports = {
bar: function() {
console.log('bar');
}
};
然後我只需要和打電話給酒吧。
var foo = require(./foo);
foo.bar();
問題會這兩個表現相同嗎?第二種模式是否會在我需要的時候繼續創建對象並在對象上調用bar?
,因爲我們在其他語言中使用也沒有創造Singleton模式的情況下,1個好主意,其中我們繼續,如果它已經創建一次服務於同一個實例?
您正在使用ES6,所以請確定,很少有瀏覽器支持此功能。 –
目的是在nodeJS中運行,而不是在瀏覽器中運行。 –