我與原型方法工作,這裏是之情況Javascript - 使用本地var還是這個?
function Foo() {
this.x = 5;
this.y = 2;
this.z = this.addValues();
}
Foo.prototype = {
addValues: function(){
return this.x + this.y;
}
}
顯然,這只是一個簡單的例子;在真正的項目中,'addValue'函數中會有很多活動。使用'this'關鍵字100s的時間或者將其緩存到局部變量有助於任何性能改進。例如,下面會有什麼區別?
Foo.prototype = {
addValues: function(){
var self = this;
return self.x + self.y;
}
}
後者通常只在需要保存當前上下文時使用,因爲「this」即將更改。 – 2011-12-20 02:10:17
'this'(有效)是一個局部變量,它在進入執行上下文時被設置。所以使用它應該與局部變量具有相同的性能,可能會更快。 – RobG 2011-12-20 02:14:06