JavaScript prestasie
Hoe om jou JavaScript-kode te bespoedig.
Verminder aktiwiteit in lusse
Lusse word dikwels in programmering gebruik.
Elke stelling in 'n lus, insluitend die for-stelling, word vir elke iterasie van die lus uitgevoer.
Stellings of opdragte wat buite die lus geplaas kan word, sal die lus vinniger laat loop.
Slegte:
for (let i = 0; i < arr.length; i++) {
Beter kode:
let l = arr.length;
for (let i = 0; i < l; i++) {
Die slegte kode kry toegang tot die lengte-eienskap van 'n skikking elke keer as die lus herhaal word.
Die beter kode kry toegang tot die lengte-eienskap buite die lus en laat die lus vinniger loop.
Verminder DOM-toegang
Toegang tot die HTML DOM is baie stadig, in vergelyking met ander JavaScript-stellings.
As jy verwag om verskeie kere toegang tot 'n DOM-element te kry, kry een keer toegang daartoe en gebruik dit as 'n plaaslike veranderlike:
Voorbeeld
const obj = document.getElementById("demo");
obj.innerHTML = "Hello";
Verminder DOM-grootte
Hou die aantal elemente in die HTML DOM klein.
Dit sal altyd die laai van bladsye verbeter en die weergawe (bladsyvertoning) versnel, veral op kleiner toestelle.
Elke poging om die DOM te soek (soos getElementsByTagName) sal baat by 'n kleiner DOM.
Vermy onnodige veranderlikes
Moenie nuwe veranderlikes skep as jy nie van plan is om waardes te stoor nie.
Dikwels kan jy kode soos volg vervang:
let fullName = firstName + " " + lastName;
document.getElementById("demo").innerHTML = fullName;
Met hierdie:
document.getElementById("demo").innerHTML = firstName + " " + lastName;
Vertraag JavaScript-laai
As u u skrifte onderaan die bladsyliggaam plaas, kan die blaaier die bladsy eerste laai.
Terwyl 'n skrip aflaai, sal die blaaier geen ander aflaaie begin nie. Daarbenewens kan alle ontleed- en weergaweaktiwiteite geblokkeer word.
Die HTTP-spesifikasie definieer dat blaaiers nie meer as twee komponente parallel moet aflaai nie.
'n Alternatief is om defer="true"
in die script tag te gebruik. Die uitstel-kenmerk spesifiseer dat die skrip uitgevoer moet word nadat die bladsy klaar geparseer het, maar dit werk net vir eksterne skrifte.
Indien moontlik, kan jy jou skrif by die bladsy voeg deur kode, nadat die bladsy gelaai is:
Voorbeeld
<script>
window.onload = function() {
const element = document.createElement("script");
element.src = "myScript.js";
document.body.appendChild(element);
};
</script>
Vermy die gebruik met
Vermy die gebruik van die with
sleutelwoord. Dit het 'n negatiewe uitwerking op spoed. Dit maak ook JavaScript-omvange deurmekaar.
Die with
sleutelwoord word nie in streng modus toegelaat nie.