今までは、Revealing Module パターンを使用して、次のように Javascript を構築していました。
var module = (function() {
var privateVar;
// @public
function publicFunction( ) {
}
return {
publicFunction: publicFunction
}
})();
このコードは期待どおりに動作しますが、このパターンは複数のインスタンスがある場合に大量のメモリを使用し、他のパターンに比べて速度に問題があるという記事を最近読みました。私はこのパターンでの作業を楽しんでいるので、これらすべての「問題」のない類似のパターンを検索し、Revealing Prototype パターンに出会いました。私の知る限り、JavaScript の Prototype はメモリ管理がはるかに優れています。
Revealing Prototype Pattern を使用する方がメモリにとってより高速/より良いかどうか疑問に思っていますか? このベンチマークは私を驚かせました。モジュール パターンの方がはるかに高速に見えるからです。何か理由はありますか?
また、Revealing Prototype パターンを使用して複数のインスタンスを作成する方法がわかりませんでした (上記の Revealing Module Pattern Fiddle と比較してください)。
var prototypeModule = function( el ) {
this.init( );
};
prototypeModule.prototype = function () {
var privateVar;
// @public
function init( ) {
}
return {
init: init
}
}();
私は何を間違っていますか?