Es gibt keine Sparsamkeit beim "Speichern von Variablen", während wiederholter Code immer und immer wieder wiederholt wird. Für mich fällt das definitiv in die Kategorie DRY (Don't Repeat Yourself).
Javascript-Interpreter sind für den schnellen Zugriff auf lokale Variablen optimiert. Wenn eine Variable referenziert wird, ist der erste betrachtete Bereich der lokale Bereich, so dass er sofort gefunden wird, und weil es keinen Zugriff von außen auf lokale Variablen gibt, kann der Code innerhalb der Funktion, die sie verwendet, schön optimiert werden Gut.
Am Ende ist es wahrscheinlich so viel eine persönliche Kodierungspräferenz als alles andere.
Meine persönliche Regel ist, dass, wenn ich einige mehrstufige Referenz wie e.target.value
habe und ich es mehr als einmal in einer Funktion verwende, dann werde ich eine sinnvolle lokale Variable erstellen und zuweisen, damit ich kann Verwenden Sie dann einfach die lokale Variable an den mehreren Stellen und vermeiden Sie es, dieselbe mehrstufige Eigenschaftsreferenz immer wieder zu wiederholen (ein Lehrbuchbeispiel für DRY).
Das macht definitiv den Code auch lesbarer, sowohl weil Sie einen aussagekräftigen Variablennamen haben, als auch weil es nur eine einfache Variable ist und keine mehrstufige Eigenschaftsreferenz, die einen generischen Namen hat. Während es technisch möglicherweise eine zusätzliche Codezeile für die lokale Variablenzuweisung ist, speichert es viele wiederholte Eigenschaftsnachfragen, so dass die Theorie lautet, dass es schneller sein sollte, den Endwert in textBoxContent
zu speichern und nicht den Interpreter Lookup e.target.value
zu haben jedes Mal.
Auch sollten Sie nie für Leute fallen, die regelmäßig Code optimieren möchten, wie sie es zuerst schreiben. Optimierungen wie diese müssen in der Regel nur für 0,000001% Ihres gesamten Codes gelten und erst dann, wenn Sie genau festgestellt haben, wo Ihr Engpass für die Leistung liegt. Und selbst dann müssen Sie mehrere Benchmarks in Ihrer Zielumgebung entwickeln, um zu beweisen, was die Dinge tatsächlich schneller macht (verwenden Sie nicht die Meinung einer Person - nur Messungen).
Zuvor sollte der gesamte Code korrekt, klar, lesbar, wartbar, erweiterbar, DRY, geeignete Leistung und etwa 10 andere Prioritäten sein, bevor jemand an eine Mikrooptimierung denkt. Wenn Sie die obigen Prioritäten auf den Fall anwenden, nach dem Sie gefragt haben, werden Sie immer entscheiden, e.target.value
einer lokalen Variablen zuzuweisen, wenn Sie innerhalb eines Kontexts mehrfach darauf verweisen.
"Speichern von Variablen" klingt für mich wie Mikro-Optimierung. Sie sollten die Ausführungsengine ihre Aufgabe ausführen lassen, es sei denn, Ihre Domäne erfordert etwas anderes. – haim770
Es ist ein Versuch der Mikro-Optimierung, der die Lesbarkeit des Codes behindert. Es ist im Allgemeinen keine gute Übung. –