実行するのは非常に簡単で、継承アプリケーションに最適です。
あなたは単にあなたが望むものを返すだけで、おそらくメソッドを介してそれを返し、後で他の関数で再利用して構築します。
例は次のとおりです。
function a(){
var b;
//assignment to b and other stuff
return b;
};
// or
function a(){
var b, result;
//assignment to b and other stuff
returnInitial: function() {
return b;
}
// other stuff with b
return result;
};
後で、いわゆる「寄生継承」を使用し、すべてのローカル変数を使用して他の関数内でこの関数全体を開始し、次のように新しいメソッドを追加できます。
var a function() {
var b, result;
//assignment to b and other stuff
returnInitial: function() {
return b;
}
// other stuff with b
return result;
}
var extendedA function() {
var base = new a;
var b = a.returnInitial();
a.addToB = function (c) {
var sum = c + a.returnInitial();
return sum;
}
}
だからあなたは今得ることができます
var smt = new extendA();
var c = 12; //some number
var sumBC = extendA.addToB(c);
これらの優れたプラクティスについては、js オブジェクトの処理に関する doug crockford の講義を ytube で検索することをお勧めします。
新しいインスタンスを初期化しないと、javascript が使用する動的オブジェクト処理によって元のオブジェクトがクラッシュする可能性があるため、new を使用する必要があることに注意してください。