2

次のコードでは、メソッドmy_methodを呼び出してグローバル オブジェクト (ウィンドウ) を出力するにはどうすればよいでしょうか?

 MyClass = function() {
      this.my_method = function() {
         console.log(this);
      }
  }
  var myobject = new MyClass();

これは宿題ではありませんが、よくある質問で、JavaScript の深い知識がないため理解できません。

だから、誰かが私を理解し、よく説明された答えをくれるのを手伝ってくれるなら、私は幸せです!

4

2 に答える 2

2

callとを使用applyして、関数のコンテキストを変更することもできます。

var myobject = new MyClass();
myobject.my_method.call(this);
myobject.my_method.apply(this); 

これは、永続的なバインドが不要な場合や、コンテキストを動的に変更したい場合にうまく機能する可能性があります。

于 2012-09-10T09:01:53.227 に答える