次のように、モジュラー パターンを使用して JavaScript アプリケーションを構築したかったのです。
APP = (function() {
// Private stuff
var _privateVariable = 'private',
_priv = 'priv'
_privateMethod = function(){ /* */ };
// Exposed API
return {
publicVariable : 'public',
publicMethod : function(){
return _privateVariable
};
}());
次に、プラグインのようなモジュールを介してアプリケーションを拡張できるようにしたいと考えています。たとえば、jQuery を使用します。
$.extend(true, APP, (function() {
// Child private stuff
var _privateVariable = 'childPrivate',
// Exposed API
return {
}()))
私が達成しようとしているのは、次のいずれかです。
- 延長して呼び出す
APP.publicMethod()
と、戻りたいのですが、そうで'childPrivate'
はありません'private'
。 _priv
拡張公開 APIからアクセスできること。
要約すると、親モジュールで定義されたプライベート変数が、子のプライベート メンバーとして子モジュールに継承されることを望みます。