私はスタンドアロン変数内の特定のオブジェクトからメンバ関数を入れようとしています。新しい変数を使うだけで元のオブジェクト上の関数を呼び出せるようにしたいと考えています。Javascript - オブジェクトのメンバ関数をスタンドアロン変数に入れる?
したがって、このような何か:
var str = "abcdefgh";
var fn = str.indexOf;
console.log(fn("e")); // supposed to output 4
のでfn(x)
がstr.indexOf(x)
と同じ操作を行うことになっています。しかし、これは機能しません。私はこれを取り除くことができる別の方法はありますか?
ここでの難しさは、fnがその特定のstr
オブジェクトの関数を呼び出すことです。 だからfn
は何らかの閉鎖になるはずです。
ニース!互換性の理由から私は上記の 'bind()'アプローチを好むでしょうが、これは素晴らしい選択肢です。ありがとう! – RocketNuts