Maturitarozbory témat
10

Podprogramy a lambda funkce

📚 PRG
📝 Příprava: 30 min
🎯 Zkouška: 15 min
⚡ Praktická část
📖

Teorie

Funkce jako základní stavební blok: parametry, návratová hodnota, scope, closure (uzávěr), higher-order functions. Lambda (arrow) funkce: krátké anonymní funkce, často používané jako callbacky.

🎯

Tahák

  • 1Pure function vs. impure
  • 2Closure zachovává okolní scope
  • 3Higher-order functions přijímají funkce jako parametry

Typické otázky u maturity

  • 1Co je closure?
  • 2Kdy použít pure function?
🏷️

Klíčová slova

functionclosurelambdaHOF

Praktická část

Zadání:

Ukázka: napište funkci 'once' která provede danou funkci pouze jednou.

Kroky:

  1. 1Použij closure pro uložení flagu
  2. 2Vrátit obalenou funkci

Kód:

once.ts
export function once<T extends (...a:any[])=>any>(fn: T){
  let called = false;
  let res: any;
  return function(...args:any[]){
    if(!called){ called = true; res = fn(...args); }
    return res;
  }
}

Praktická část – checklist

0 z 6 dokončeno

Pokrok0%