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);