私はかなり新しいjavascriptを使用しています。(非常に古い)コードをもう少しモダンなものにリファクタリングすると、このようなものになりました。javacriptメンバー関数の中からメンバ関数を呼び出す
var MyClass = function(parms} {/*stuff*/}
MyClass.prototype = {
this_func(p1, p2) { /* do this */ },
that_func(args) { /* do that */ }
};
note ES6 class
というキーワードはありませんが、使用可能になるとすぐに使用するようにしたいと考えています。私はthat_func
内側からthis_func
を呼びたいと、私はこのゆがみ
that_func(args) {
//this.this_func(parm1, parm2) causes an error
myClass.prototype.this_func.call(this, parm1, parm2);
}
これを行う簡単な方法がありますで終わるために管理しているとき
問題が来ますか?そして私が完全なes6を得るとき、私はちょうどthis.this_func
を使用できるでしょうか?
私はこのサイト上の既存の質問を見てきたし、それらのどれもが本当に私がやっている(あるいは、少なくともではない方法で、私は私の問題にマッピングすることができます)
明確化するもの網羅するように見えるん - クラスはこの
var myInstance = new MyClass();
myInstance.that_func('xxx');
のように使用し、私はthis_func
今すぐ 'this.this_func'を使用できるはずです。それはそれが働くことになっている方法です –
しかし、私はあなたがプロトタイプ関数を間違っていると宣言していると思います。実際のコードを表示できますか? –
Brendanは少年だったので、それがうまくいった方法です。 –