自分で修正できたエラーがありました。私のコードが機能しなかった理由と、その原因のメカニズムを説明してください。
コードは以下に含まれています。
var listTables = function (tables) {
console.log(tables);
}
var ajaxReq = function (success_cb, url) {
// success_cb can be invoked here without errors
var http = new XMLHttpRequest();
http.onreadystatechange = function (success_cb) {
if (this.readyState == 4 && this.status == 200) {
success_cb(this); // Uncaught TypeError: success_cb is not a function
}
}
http.open("GET", url, true);
http.send();
}
ajaxReq(listTables, "http://www.someurl.com");
関数定義success_cb
からコールバックを削除すると、コードは正常に動作します。onreadystatechange
これはスコープに関連する問題ですか?