$ .ajax()内的这个关键字调用其他函数来设置url

时间:2013-12-15 08:59:41

标签: javascript jquery ajax

我正在使用以下代码进行ajax调用

return $.ajax({ 
    type: this.setType(), 
    url: this.setUrl() 
});

我的问题是关于this关键字。 this关键字在我的上述情况下是否有效,或者我应该将其保存在其他变量中,例如self,以使上述代码有效?

1 个答案:

答案 0 :(得分:2)

它会正常工作。对setTypesetUrl的调用是在当前作用域内完成的,作为对象初始值设定项的一部分,然后该对象被传递到$.ajax

以下是评估代码的方式:

var obj = {};
obj.type = this.setType();
obj.url = this.setUrl();
var rv = $.ajax(obj);
return rv;

由于您从未引入新范围(从不创建或输入新功能),因此this不会更改。