javascriptの自己再定義メソッドを代入後に使うには?
javascriptで自分を書き換えるメソッドを定義します。
このメソッドを代入してから、代入後の変数名で呼び出しても再定義が動作しません。
回避策はありますか?
// 自分を書き換える関数
var funcA = function(){
console.log("A");
funcA = function(){
console.log("B!");
}
};
// 代入
var funcB = funcA;
// グローバルのfuncAは再定義されるが、funcBは古いポインタを指している。
funcB(); // Aが表示される
funcB(); // またAが表示される