18

我很少有广泛使用关键字“that”的javascript。我看到很多帖子都在谈论 javascript 关键字“this”。

我想了解这个关键字在 javascript 上下文中的含义以及它的可见性/范围。

就像是

that.someFunctionaName(someParameter)

这是什么意思?

我理解关键字“this”总是指向当前对象的所有者。

4

1 回答 1

30

that不是 JavaScript 中的关键字。我怀疑您拥有的代码正在使用类中的某些内容来定义自身的实例。例如:

function myClass()
{
    var that = this;
}

通过这样做,您可以确保您引用的是对象,而不是另一个元素。例如,考虑以下示例:

function myClass()
{
    var that = this;
    $('.myele').click(function() {  

        // 'this' refers to the element that was clicked.
        // 'that' still refers to the myClass() object.
    });
}
于 2013-02-14T09:42:29.133 回答