使用“这个”。在 Javascript 对象变量中
在 Javascript 中,与 C 不同,变量必须显式地以“this”作为前缀。来引用它们所属的对象。这是两种语言之间面向对象编程的一个关键区别。
Javascript 中的“this”关键字表示当前上下文,即调用函数的对象。当您声明一个没有“this.”的变量时,它就成为该函数范围内的局部变量。要从函数内访问对象的属性,您需要使用“this”。后跟属性名称。
考虑以下代码:
function foo() { bar = 0; // This creates a local variable this.getBar = function() { return bar; } // This creates a privileged method }
在此代码中,“bar”是“foo”函数中的局部变量,而“getBar”是有权访问局部变量的特权方法。如果不使用“this.”,“getBar”将无法访问“bar”。
这种使用“this.”的方法。对于要从对象方法内访问的所有变量都是必需的。但是,Javascript 允许您在原型对象而不是实例对象上定义方法。原型上定义的方法由该对象的所有实例继承。在这种情况下,您可以避免使用“this”。对于那些方法。下面是一个例子:
function Foo() { this.bar = 0; } Foo.prototype.getBar = function() { return this.bar; }
在这段代码中,“getBar”是在原型上定义的,因此“Foo”的实例继承了这个方法,并且可以访问“bar”而无需添加“this”前缀。
简而言之,使用“this”。对于从实例对象内部定义的函数/方法访问对象属性至关重要。但是,可以通过在原型上定义方法来避免这种情况。
以上是何时以及为何需要使用'this”。 JavaScript 对象变量?的详细内容。更多信息请关注PHP中文网其他相关文章!