我正在使用以下代码进行ajax调用
return $.ajax({
type: this.setType(),
url: this.setUrl()
});
我的问题是关于this
关键字。 this
关键字在我的上述情况下是否有效,或者我应该将其保存在其他变量中,例如self
,以使上述代码有效?
答案 0 :(得分:2)
它会正常工作。对setType
和setUrl
的调用是在当前作用域内完成的,作为对象初始值设定项的一部分,然后该对象被传递到$.ajax
。
以下是评估代码的方式:
var obj = {};
obj.type = this.setType();
obj.url = this.setUrl();
var rv = $.ajax(obj);
return rv;
由于您从未引入新范围(从不创建或输入新功能),因此this
不会更改。