Grunderna i Big-O, heta och kalla kodvägar (nybörjarvinster)
Använd intuition för Big-O och fokusera på heta kodvägar. Ersätt nästlade genomgångar med Set/Map, undvik upprepat arbete och håll koden liten och tydlig.
Grunderna i Big-O, heta och kalla kodvägar (nybörjarvinster) är en gratis lektion i JavaScript Academy på CoddyKit. Detta är lektion 1 av 3. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för JavaScript Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i JavaScript Academy innehåller totalt 3 lektioner.
Överblick
Mål: Nå snabba förbättringar utan komplicerad teori.
- Big-O-intuition: undvik dubbla loopar
- Varma och kalla kodvägar: optimera det som körs oftast
- Set/Map för snabba uppslag
- Gör arbetet en gång och återanvänd resultatet

Nästlad genomgång = kostsam
Nästlade genomgångar mångdubblar arbetet. Varje includes går igenom arrayen igen.
// Bad pattern: nested scan for membership (can be ~O(n^2))
const haystack = ["a","b","c","d","e"];
const needles = ["b","e","x"];
const foundSlow = [];
for (const n of needles) {
// includes scans the array each time
if (haystack.includes(n)) {
foundSlow.push(n);
}
}
console.log("slow found:", foundSlow);

Set för medlemskapskontroll
Skapa ett Set en gång och använd has för snabb medlemskapskontroll. Då försvinner den inre genomgången.
// Better: build a Set once, then O(1)-ish checks (~O(n) overall)
const fastSet = new Set(haystack);
const foundFast = [];
for (const n of needles) {
if (fastSet.has(n)) {
foundFast.push(n);
}
}
console.log("fast found:", foundFast);

Map för räkning
Map lagrar antal för uppslag som är ungefär O(1) senare; undvik att gå igenom arrayer igen för att räkna om.
// Build a frequency map once instead of scanning many times
const words = ["a","b","a","a","c","b"];
const freq = new Map();
for (const w of words) {
const old = freq.get(w) || 0;
freq.set(w, old + 1);
}
console.log("count a:", freq.get("a"));
console.log("count b:", freq.get("b"));

Gör det en gång (cache)
Om ett värde återkommer kan Ni cachelagra resultatet. Håll cachelagren små och tydliga för nybörjare.
// Do work once and reuse (tiny cache)
function heavy(x) {
// pretend heavy math
return x * x + 1;
}
const cache = new Map();
function heavyCached(x) {
if (cache.has(x)) return cache.get(x);
const val = heavy(x);
cache.set(x, val);
return val;
}
console.log("first:", heavyCached(5));
console.log("second:", heavyCached(5)); // cached

Fokusera på varma kodvägar
Varm kodväg: körs många gånger (optimera här). Kall kodväg: sällsynt kod (håll den enkel).
- Ta bort inre loopar i varm kod.
- Använd Set/Map för varma medlemskaps- och räkneuppgifter.
- Mät senare; börja med tydlighet.

Quiz om optimering av medlemskapskontroll
Snabb kontroll: Minska nästlade genomgångar.

Sammanfattning
Sammanfattning: Undvik nästlade genomgångar, använd Set/Map för uppslag och räkning, och gör arbetet en gång. Fokusera på varma kodvägar och håll kall kod enkel.

Lär dig JavaScript med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 59
- Lektioner
- 200
Vanliga frågor
Är lektionen ”Grunderna i Big-O, heta och kalla kodvägar (nybörjarvinster)” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen JavaScript Academy, inklusive ”Grunderna i Big-O, heta och kalla kodvägar (nybörjarvinster)”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i JavaScript Academy innehåller totalt 3 lektioner.
Vad lär jag mig i ”Grunderna i Big-O, heta och kalla kodvägar (nybörjarvinster)”?
Använd intuition för Big-O och fokusera på heta kodvägar. Ersätt nästlade genomgångar med Set/Map, undvik upprepat arbete och håll koden liten och tydlig. Ni övar på JavaScript Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig JavaScript Academy?
Du behöver inga förkunskaper. Utbildningen i JavaScript Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 3.
Hur lång tid tar lektionen ”Grunderna i Big-O, heta och kalla kodvägar (nybörjarvinster)”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här JavaScript Academy-lektionen?
Ja. Varje JavaScript Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Grunderna i Big-O, heta och kalla kodvägar (nybörjarvinster)
- Undvik minnesläckor — closures, timers och referenser
- Introduktion till profilering (Node/DevTools) — små tidsvanor