に私はそれは、要求がsが言うと、それはいくつかのデータを取得させます、私はこのコードはjavascriptの
var makeRequest=function(url,callback){
var data=10;
callback(data);
};
var obj = {
someValue: 20,
loadData: function(data){
var sum = this.someValue + data;
alert(sum);
},
prepareRequest:function(){
var url="http://someurl.com";
makeRequest(url,obj.loadData);
}
};
を持っている、これは例えば、いくつかの状況での動作方法について混乱しています。問題は、私が関数makeRequest
をobj.loadData
と呼んでいるときにエラーとなることです。 誰かがこれがなぜ起こるのか説明できますか?私がobj.prepareRequest()
と呼んでも、loadData
メソッドがobj
オブジェクトに攻撃されても、それが期待通りに動作しないのはなぜですか? 私は助けていただければ幸いです。 "この"キーワードは本当に混乱しています。時点
可能な複製を助け[ "この" キーワードの作業を行う方法は?](https://stackoverflow.com/questions/3127429/how-does-the-this-keyword-work ) –
どうしたらいいですか? –
関数 "loadData"内で "this"はオブジェクトを参照するのではなく、関数自体を参照します。 JavaScriptの変数スコープを読み込みます – EyeOfTheHawks