Heim > Artikel > Web-Frontend > Einige wissenswerte praktische Tipps zur JavaScript-Optimierung
Bei der Arbeit können wir oft durch einige kleine Details die Lesbarkeit des Codes verbessern und den Code eleganter aussehen lassen. Dieser Artikel wird Ihnen einige praktische Tipps zur JavaScript-Optimierung geben, die Sie auf einen Blick verstehen können. Ich hoffe, er wird Ihnen hilfreich sein!
「Schwierigkeitsgrad:?」 「Empfohlene Lesezeit: 5min
」min
」
if...else
的函数的时候就该想想是否有更好的优化方法。【相关推荐:javascript学习教程】if...else
语句,这一定程度上也违反了开闭原则,当我们需要增加一个逻辑的时候要尽量通过扩展软件实体来解决需求变化,而不是通过修改已有的代码来完成变化。Map
机构的数据来保存所有商品,这里我们直接建立一个对象来存储。getPrice
的逻辑了,当然了这里其实更多人喜欢直接在用的地方直接使用foodMap
,我这里只是简单举了个例子表述这个思路。key
只用字符串呢,这时候你就可以用到new Map
了,思路也是差不多的,额外扩展一个实体来存储变化。filter
与map
来取代for
循环不仅可以使代码更精简,还可以使语义更加明确,这样我们一下就可以看出是先对数组过滤
再重组
。find
的用处就出来了。includes
函数来调用。return
,这样的习惯其实是不好的,因为等我们下次再去参照这段代码的时候还需要重新捋清逻辑。result
Reduzieren Sie den if...else-Nudelcode
if...else
schreiben > Funktion sollten Sie darüber nachdenken, ob es eine bessere Optimierungsmethode gibt. [Verwandte Empfehlungen: Javascript-Lern-Tutorial]🎜if hinzufügen. ..else
-Anweisung verstößt bis zu einem gewissen Grad auch gegen das „Öffnungs- und Schließprinzip“. Wenn wir eine Logik hinzufügen müssen, sollten wir unser Bestes geben, um die Änderung der Anforderungen zu lösen, indem wir die Software-Entität erweitern Ändern des vorhandenen Codes, um die Änderung abzuschließen. 🎜Map
verwenden, um alle Produkte zu speichern. 🎜🎜🎜🎜getPrice
nicht ändern, wenn wir das nächste Mal ein weiteres Produkt hinzufügen müssen. Natürlich bevorzugen mehr Leute hier die direkte Verwendung von foodMap wo sie verwendet werden
, ich habe nur ein einfaches Beispiel gegeben, um diese Idee auszudrücken. 🎜key
verwenden möchte, können Sie new Map
verwenden, die Idee fast das Gleiche, mit einer zusätzlichen Entität, die zum Speichern von Änderungen erweitert wurde. 🎜🎜filter
und map
ersetzen, um die for
-Schleife zu ersetzen Dadurch wird nicht nur der Code rationalisiert, sondern auch die Semantik klarer, sodass wir auf einen Blick erkennen können, dass das Array zuerst gefiltert
und dann reorganisiert
wird. 🎜🎜🎜🎜🎜find ersetzt redundante Schleifen🎜find
zum Vorschein. 🎜🎜🎜🎜🎜beinhaltet das Ersetzen redundanter Schleifen🎜includes
aufgerufen werden. 🎜🎜zurückgegeben
. Diese Angewohnheit ist eigentlich schlecht, da wir sie beim nächsten Mal, wenn wir auf diesen Code verweisen, neu schreiben müssen. 🎜result
als Rückgabewert verwenden. 🎜🎜🎜🎜🎜Die Verwendung von result
als Rückgabewert oben gilt jedoch nicht für alle Situationen. Manchmal müssen wir den Funktionskörper vorzeitig beenden, um zu verhindern, dass nachfolgende Kollegen redundante Programme lesen. result
作为返回值并不适用于所有情况,往往有些时候我们需要提前结束函数体来避免后面的同事阅读多余的程序。
如下的例子中当我们selectedKey
不存在的时候应该立即return
,这样就不用继续阅读下面的代码,否则面对更复杂的函数时会增加很多的阅读成本。
getDocDetail
不止要用到icon
和content
,可能以后还会有title
,date
等属性,所以我们不如直接将完整对象传入,不仅增加缩短参数列表还会让代码更易读。null
Wenn im folgenden Beispiel unser selectedKey
nicht existiert, sollten wir sofort zurückkehren
, damit wir den folgenden Code nicht weiter lesen müssen, sonst tun wir es wird mit komplexeren Funktionen konfrontiert sein. Dies wird die Kosten für das Lesen erheblich erhöhen.
getDocDetail
nicht nur icon
und content
verwendet, kann es auch title
und date enthalten Future.
und andere Attribute, daher könnten wir genauso gut das komplette Objekt direkt übergeben, was nicht nur die Parameterliste verkürzt, sondern auch den Code besser lesbar macht. 🎜🎜🎜🎜🎜Intelligenter Einsatz von Operatoren🎜🎜🎜🎜Wenn wir eine neue Variable erstellen müssen, müssen wir manchmal prüfen, ob die Variable, auf die durch ihren Wert verwiesen wird, null
ist oder undefiniert können Sie einfaches Schreiben verwenden. 🎜🎜🎜🎜🎜🎜Am Ende geschrieben🎜🎜🎜Zuallererst möchte ich mich bei Ihnen allen für das Lesen bedanken. Dieser Artikel fasst einige sehr grundlegende Optimierungsmethoden zusammen. 🎜🎜🎜【Empfohlene verwandte Video-Tutorials: 🎜Web-Frontend🎜】🎜Das obige ist der detaillierte Inhalt vonEinige wissenswerte praktische Tipps zur JavaScript-Optimierung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!