在Javascript面向对象编程中,何时应该使用
此外,如果我想从同一类的另一个方法调用类的方法,我应该使用
this
关键字?此外,如果我想从同一类的另一个方法调用类的方法,我应该使用
this
还是只使用函数的名称?例如,这样做是否正确?function Foo()
{
this.bar= function()
{
alert('bar');
}
this.baz= function()
{
this.bar(); //should I use this.bar() or just bar()?
}
}
bar()
,因为在 JavaScript 中this
从来不是隐式的(因为它不是真正的面向对象语言)。bar()
首先会在函数this.baz
中查找定义为bar
的变量,然后会在函数Foo
中查找定义为bar
的变量,最后会在全局范围内查找,如果还是找不到就会抛出错误。 - Blixt