Javascript 使用Backbone.js在setTimeout()中执行函数

Javascript 使用Backbone.js在setTimeout()中执行函数,javascript,jquery,backbone.js,Javascript,Jquery,Backbone.js,我试图在主干模型中使用setTimeout()。下一个代码起作用: setTimeout(this.ajaxRequest,4000) 但不是下一个: setTimeout(函数(){ 这是我的请求; },4000); 既不使用\uu0.bind(this.ajaxRequest,this)(下划线.js)或 timeoutFunction:function(){ 这是我的请求; },带有 setTimeout(this.timeoutFunction,4000) 当AJAX响应完成(succe

我试图在主干模型中使用
setTimeout()
。下一个代码起作用:
setTimeout(this.ajaxRequest,4000)
但不是下一个:
setTimeout(函数(){
这是我的请求;
},4000);

既不使用
\uu0.bind(this.ajaxRequest,this)(下划线.js)或

timeoutFunction:function(){
这是我的请求;
},
带有
setTimeout(this.timeoutFunction,4000)


当AJAX响应完成(
success:
)和
.bindAll(this)时调用setTimeout函数
initialize:

中执行。您没有在setTimeout(函数)调用中调用函数。对于第一个实例,您传递一个对setTimeout正在调用的函数的引用,第二个实例,您传递一个函数,而该函数什么也不做(什么都不做)。该函数需要调用函数this.ajaxRequest()


您没有在setTimeout(函数)调用中调用函数。对于第一个实例,您传递一个对setTimeout正在调用的函数的引用,第二个实例,您传递一个函数,而该函数什么也不做(什么都不做)。该函数需要调用函数this.ajaxRequest()


我们可以得到一个更大的代码片段,而不是一堆没有上下文的小代码片段吗?我们可以得到一个更大的代码片段,而不是一堆没有上下文的小代码片段吗?你说的部分是对的<代码>this.ajaxRequest()
timeoutFunction
中工作,但在
setTimeout
calledGood调用中不工作,是的,这是无效的,我正在更新上面的代码。我建议不要使用
self
作为这类东西的名称,因为存在,如果您忘记了
var self=this然后你会抓挠你的头好几个小时不知道WTF是怎么回事(是的,我不得不用艰苦的方式学习)。我一直在使用
var\u this=this。你部分是对的<代码>this.ajaxRequest()
timeoutFunction
中工作,但在
setTimeout
calledGood调用中不工作,是的,这是无效的,我正在更新上面的代码。我建议不要使用
self
作为这类东西的名称,因为存在,如果您忘记了
var self=this然后你会抓挠你的头好几个小时不知道WTF是怎么回事(是的,我不得不用艰苦的方式学习)。我一直在使用
var\u this=this
var _this = this;
setTimeout(function(){ _this.ajaxRequest(); },4000);