3

我正在尝试为此添加声明一个变量,因此我可以在 http-request-callback 中使用它:

但它不起作用, self 成为窗口对象,而不是“this”。

mycompany.getData(mycompany.save.bind(mycompany))

company.prototype.getData = function(callback){
    console.log(this)//outputs the object company
    self = this;
    console.log(this)//outputs the object company
    console.log(self)//outputs the window object
    GM_xmlhttpRequest({
            ...
            callback
    })
}
4

2 回答 2

3

全局变量是selfwindow.self 尝试更改代码:

var self = this;
于 2013-08-13T12:18:27.647 回答
0

如果要在本地转换某些变量,$这是一个很好的约定:

function() {
    var $this = this;

    console.log($this);
}
于 2013-08-13T12:21:49.513 回答