我在一个新的代码库中遇到过这种情况,我正在看,并且想知道它背后是否有任何正确的推理?
答案 0 :(得分:2)
您可以使用var that = this;
命令保留对当前this
对象的引用,稍后this
将指向其他内容。
示例(taken from here):
$('#element').click(function(){
// this is a reference to the element clicked on
var that = this;
$('.elements').each(function(){
// this is a reference to the current element in the loop
// that is still a reference to the element clicked on
});
});
答案 1 :(得分:1)
有时,JavaScript中this
的含义会根据范围发生变化。构造函数内部的this
表示函数内部与this
不同的东西。这是关于它的good article。
答案 2 :(得分:0)
如果要访问特定函数调用范围之外/内部的“this”,那么“this”可能已更改。只是我能想到的一个例子。