Ich arbeite seit 4 Monaten am Webprojekt. Um die Code-Performance zu optimieren, haben wir ein Muster verwendet. Mein Zweifel ist, erhöht es tatsächlich Leistung oder nicht?Javascript dieses Objekt
Wenn wir jemals this
Objekt verwenden müssen, weisen wir es einer lokalen Variablen zu und verwenden diese.
function someFunction()
{
var thisObject = this;
//use thisObject in all following the code.
}
die hier davon ausgegangen, dass die Zuordnung this
Objekt zu einem lokalen Stack Variable, die die Leistung steigern.
Ich habe diese Art der Codierung nirgends gesehen so zweifeln, ob es keinen Nutzen hat.
BEARBEITEN: Ich weiß, dass das Zuweisen dieses Objekts zu lokalen Variablen für die Erhaltung des Objekts getan wird, aber das ist nicht unser Fall.
Es ist sehr häufig in Node.js Sachen. Aber das ist mehr für eine Referenz in Callbacks, im Gegensatz zu einer Leistungssteigerung, glaube ich. – Chad
Ich werde raten, dass das eigentlich * schlechter * für die Leistung ist. Der Google Closure-Compiler (mit erweiterten Optimierungen) entfernt die var-Deklaration und ersetzt Instanzen von thisObject durch this, obwohl die Verwendung einer Variablen häufig zu einer kleineren Größe führt. Der Closure-Compiler optimiert die Geschwindigkeit und Größe, scheint aber die Geschwindigkeit gegenüber der Größe zu bevorzugen, wenn er die Wahl hat. –