var module = (function() {
var privateVar;
// @public
function publicFunction( ) {
}
return {
publicFunction: publicFunction
}
})();
尽管这段代码按预期工作,但我最近读了一篇文章,指出如果你有多个实例,此模式会使用大量内存,并且与其他模式相比存在一些速度问题。因为我喜欢使用这种模式,所以我搜索了一些类似的模式,避免了所有这些“问题”,我发现了揭示原型模式。据我所知,JavaScript的原型具有更好的内存管理。
现在我想知道是否使用揭示原型模式更快/更好地管理内存? 这个基准测试让我感到惊讶,因为模块模式似乎要快得多。有什么原因吗?
此外,我无法弄清楚如何使用揭示原型模式拥有多个实例(与上面的揭示模块模式Fiddle进行比较):
var prototypeModule = function( el ) {
this.init( );
};
prototypeModule.prototype = function () {
var privateVar;
// @public
function init( ) {
}
return {
init: init
}
}();
我做错了什么?