ランダムな関数を実行したい。Typescript:varのメソッドは別のメソッドを呼び出せませんか?
module A {
...
export function foo(): number {
let b = new B();
let possibleFunctions = [
b.possibleFunction1,
b.possibleFunction2
];
let index = Math.floor(Math.random() * 2);
possibleFunctions[index](_var_);
}
class B {
public usefulFunction() {
console.log("bbbb");
...
}
public possibleFunction1() {
...
console.log("aaaa");
this.usefulFunction(); // <-- IS NOT CALLED
console.log("cccc");
}
public possibleFunction2() {
...
}
}
}
出力のみaaaa
のようだと機能usefulFunciton
が(それがエラーになります)と呼ばれることはありません:私のコードは次のようになります。
私は
possibleFunction1(_var_);
すべてが問題なく動作によって
possibleFunctions[index](_var_);
を交換する場合。
だから私は知って興味があった:
1.は正しい私の観測はありますか?
なぜそうですか?関数は深くコピーされているのでしょうか?
3,正しい方法はありますか?
ありがとうございました!
「_var_」はどこにも定義されておらず、関数呼び出しでパラメータを渡すのはなぜですか?関数はパラメータを受け付けません。 – Ced