Výkon JavaScriptu


Obsah

    Zobrazit obsah


Jak zrychlit svůj JavaScript kód.


Snižte aktivitu ve smyčkách

V programování se často používají smyčky.

Každý příkaz ve smyčce, včetně příkazu for, se provede pro každou iteraci příkazu smyčka.

Příkazy nebo přiřazení, které lze umístit mimo smyčku, vytvoří smyčka běží rychleji.

špatné:

for (let i = 0; i < arr.length; i++) {

Lepší kód:

let l = arr.length;
for (let i = 0; i < l; i++) {

Špatný kód přistupuje k vlastnosti length pole pokaždé, když je smyčka iterované.

Lepší kód přistupuje k vlastnosti length mimo smyčku a vytváří smyčka běží rychleji.


Omezte přístup DOM

Přístup k HTML DOM je ve srovnání s jinými příkazy JavaScriptu velmi pomalý.

Pokud očekáváte, že k prvku DOM budete přistupovat několikrát, otevřete jej jednou a použijte to jako lokální proměnná:

Příklad

const obj = document.getElementById("demo");
obj.innerHTML = "Hello";

Zkuste to sami →

<!DOCTYPE html>
<html>
<body>

<h2>JavaScript Performance</h2>

<p>If you expect to access a DOM element several times, access it once, and the use it as a local variable:</p>

<p id="demo"></p>

<script>
const obj = document.getElementById("demo");
obj.innerHTML = " Hello";
</script>

</body>
</html> 


Zmenšete velikost DOM

Udržujte malý počet prvků v HTML DOM.

Tohle bude vždycky zlepšit načítání stránky a zrychlit vykreslování (zobrazení stránky), zejména na menších zařízeních.

Každý pokus o prohledání DOM (jako getElementsByTagName) bude přínosem z menšího DOM.


Vyhněte se zbytečným proměnným

Pokud neplánujete ukládat hodnoty, nevytvářejte nové proměnné.

Často můžete nahradit kód takto:

let fullName = firstName + " " + lastName;
document.getElementById("demo").innerHTML = fullName;

S tím:

document.getElementById("demo").innerHTML = firstName + " " + lastName;

Zpoždění načítání JavaScriptu

Umístěním skriptů do spodní části těla stránky umožníte prohlížeči načíst soubor stránka první.

Během stahování skriptu prohlížeč nespustí žádný jiný stahování. Kromě toho může být blokována veškerá aktivita analýzy a vykreslování.

Specifikace HTTP definuje, že prohlížeče by neměly stahovat více než dvě komponenty paralelně.

Alternativou je použít ve značce skriptu defer="true". The Atribut odložit určuje, že skript by měl být proveden poté, co má stránka dokončil analýzu, ale funguje pouze pro externí skripty.

Pokud je to možné, můžete po načtení stránky přidat skript na stránku pomocí kódu:

Příklad

<script>
window.onload = function() {
  
const element = document.createElement("script");
  
element.src = "myScript.js";
  
document.body.appendChild(element);
};
</script>

Vyhněte se použití s

Nepoužívejte klíčové slovo with. Má negativní vliv na Rychlost. Také to zaplňuje rozsahy JavaScriptu.

Klíčové slovo with v přísném režimu není povoleno.