【 在 shaolin (漫漫当爹路) 的大作中提到: 】
: 标 题: Re: 该如何理解this?
: 发信站: 水木社区 (Fri May 16 09:53:03 2014), 站内
:
: function 内的 function ?
这个我是用了 var self = this来搞定。
但 setInterval()是在函数的函数内,
比如 obj.call_ajax = function(){
var self = this;
$.post(...).done(function(){
用self,否则this是谁都不知道。
setInterval( obj.query );
});
};
obj = Object();
obj.query = function(){
//当在setInterval里被调用时,this根本就不是 obj ...
};
后来我这么搞定的
setInterval()这句改成
setInterval(function(){
obj.query.apply(self);
});
: 还是setInterval 之内的 ?
: btw,如果确切需要某一function当前的this,可以赋值成变量,再在比较复杂
: 的环境中用。
:
: 【 在 wuhaochi (oo) 的大作中提到: 】
: : 把一个对象的成员函数放进了setInterval()里,结果this在第一次执行时是原对象,后来就变成 当前url对象了……
: : 飘忽不定啊!
: : 当时书上说,函数前面的的对象就是this,我觉得这就好理解了,想起以前看过的那本书,讲这个this讲得我晕头转向,根本没懂,索性不用。这次以为懂了,大用特用,结果MD,它还能变……还是在运行时动态绑定的,什么成员函数,跟普通函数没任何区别。
: : ...................
:
: --
:
:
http://weibo.com/208111541:
:
: ※ 来源:·水木社区 newsmth.net·[FROM: 61.135.152.218]
--
FROM 116.247.85.*