4. Oprav typy
Funkce má vrátit názvy produktů dražších než limit, seřazené podle ceny od nejlevnějšího.
Kód ale nefunguje: TypeScript hlásí chybu a ani řazení není správně. Oprav obojí.
Příklady
Vstup
products = [{ name: "Myš", price: 500 }, { name: "Monitor", price: 4000 }, { name: "Klávesnice", price: 1200 }], limit = 1000Výstup
["Klávesnice", "Monitor"]Vstup
products = [{ name: "Drahé", price: 300 }, { name: "Levné", price: 150 }, { name: "Střední", price: 200 }], limit = 100Výstup
["Levné", "Střední", "Drahé"]TS hlásí, že vracíš Product[], ale funkce slibuje string[]. Názvy z produktů vytáhneš přes map((p) => p.name). A sort() bez porovnávací funkce řadí jako text – řaď podle price.
1type Product = {2 name: string;3 price: number;4};5 6function expensiveNames(products: Product[], limit: number): string[] {7 return products8 .filter((p) => p.price > limit)9 .sort((a, b) => a.price - b.price)10 .map((p) => p.name);11}12