私の質問の中心になるように私の例を単純化しています。私は、特権関数を持つ基本的なJavascriptクラスを持っています。私は本当にmyVarが見えないようにする必要があります。また、私は実際にbaseClass
から継承したいと考えています。特権付きのJavascript継承
function baseClass() {
var myVar = new coolClass();
this.myPrivileged = function() {
myVar.coolFunction();
}
}
私が手の問題は、私はそうのように継承しようとしているということです。
function childClass() {
}
childClass.prototype = new baseClass();
childClass.prototype.reallyCoolFunction = function() {//Really cool stuff}
しかしcoolClass
は、インスタンスに依存する性質を持っているので、myVarをのインスタンスが1つだけこれまでに作成され、それが動作しません。 は、私がこれを行うので、場合:
- が
myPrivileged
を行いますvar x = new childClass(); var y = new childClass();
xとyの両方が、私は2つの選択肢があり理解できるように限り
baseClass.myVar
の同じインスタンスを持っていますプロトタイプ関数を呼び出して公開する
myVar
baseClass
の内部をコピーしてchildClass
に貼り付けてください(私はギャグしたいです)
私は誰かが良いアイデアを持っていることを望んでいたので、私はjavascriptの達人ではありません。事前に
おかげで、すべての
[coffeeScript](http://coffeescript.org/) – Kyle
@カイル:少なくともあなたのコメントには理由があるはずです。ほとんどの人は、JSにコンパイルされるいくつかの言語を使い始めるつもりはないので、デバッグすることは不可能です。 –
@JuanMendes "デバッグが不可能ですか?"いいえ。それはちょうどあなたの意見です。 – Kyle