使用.bind()

时间:2015-05-07 12:55:53

标签: javascript scope bind

我刚开始使用FUNCTION.bind(scope)而不是制作范围别名。

我想知道是否有办法访问原始范围,即提到的内容,以便我可以使用这两个范围而无需创建范围别名(var scope = this;

// Example using a psuedo library
var scope = {
    load: function() {
        Request.ajax({
             url: '/api/thing',
             success: function(response) {
                   var data = this.convertToJson(response);
                   var config = ORIGINALSCOPE.getConfigData();
                   this.renderData(data, config);
             }.bind(this)
        });
    },
    convertToJson: function(json) {
        return JSON.parse(json);
    }
}

1 个答案:

答案 0 :(得分:1)

没办法。如果你想同时访问 - 使用闭包而不是绑定

P.S>在您的情况下,您可以在函数内使用scope