语境
当我使用 jQuery 时,我经常需要保存this
一个变量:
var obj = {
myVar: null,
myFunction1: function() { ... },
myFunction2: function() {
this.myVar = "blabla";
this.myFunction1();
var ctx = this;
$('xxx').click(function () {
ctx.myFunction1();
});
}
}
在这种情况下,我将 all 替换this
为我的变量:
var obj = {
myVar: null,
myFunction1: function() { ... },
myFunction2: function() {
var ctx = this;
ctx.myVar = "blabla";
ctx.myFunction1();
$('xxx').click(function () {
ctx.myFunction1();
});
//etc. I do it for all "this" even if I have 15 "this"...
}
}
问题
- 保持
this
变量是一种好习惯吗?还有其他方法吗? this
用变量替换 all 是一种好习惯吗?