Javascript 外观和模块模式之间的差异
我阅读了这篇文章,对Javascript 外观和模块模式之间的差异,javascript,design-patterns,Javascript,Design Patterns,我阅读了这篇文章,对facade和模块模式之间的区别感到困惑 在这两种方式中,我们实际上是在调用同一个私有函数。facade提供了什么大功能?通常,facade隐藏了不同模块的复杂实现,而不是您自己的代码。正如在DOM事件侦听器示例中所看到的,该特定页面以前已被删除。我不想从中学到什么。事实上,与代码结构没有多大关系。可以使用JS“模块模式”来实现外观。 var MyModule = ( function( window, undefined ) { // revealing modul
facade
和模块模式之间的区别感到困惑
在这两种方式中,我们实际上是在调用同一个私有函数。facade提供了什么大功能?通常,facade隐藏了不同模块的复杂实现,而不是您自己的代码。正如在DOM事件侦听器示例中所看到的,该特定页面以前已被删除。我不想从中学到什么。事实上,与代码结构没有多大关系。可以使用JS“模块模式”来实现外观。
var MyModule = ( function( window, undefined ) {
// revealing module pattern ftw
function MyModule() {
function someMethod() {
alert( 'some method' );
}
function someOtherMethod() {
alert( 'some other method' );
}
// expose publicly available methods
return {
// in our normal revealing module pattern, we'd do the following:
someMethod : someMethod,
// in the facade pattern, we mask the internals so no one has direct access by doing this:
someMethod : function() {
someMethod();
}
};
}
} )( window );