-1
から取得します。親オブジェクトを関数
から取得します。親オブジェクトを関数
call.call(e,e.exec);//call
あなたはコンテキストを渡すことができ
class E
{
exec()
{
}
}
let e=new E();
function call(f)
{
//how to get e?
}
call(e.exec);//call
私は「E」のプロパティを操作するための関数で一連の操作を実行したいと思い
...それとも、直接渡すe:
class E {
exec(){ }
}
let e=new E();
function call(f,p)
{
//e=f
f[p]();
}
call(e,"exec");//call
なぜ 'e'をパラメータに渡し、' call'関数で 'e.exec() 'を呼び出さないのですか? – Nicolas
これは不可能です。なぜメソッドへの参照を渡し、それが属するオブジェクトを取得したいのですか? – PeterMader
あなたが 'call(f)'のスコープに入っている時までに 'e'への参照は失われます。 'e'への明示的な参照を含めるように関数宣言を変更しない限り、これは不可能です。 –