TypeScript · Senior · Pytanie 69 z 75
Jak otypować funkcję, która zachowuje dokładne klucze przekazanego obiektu, przekształcając wartości?
function mapValues<T extends object, R>(obj: T, fn: (v: T[keyof T]) => R): { [K in keyof T]: R } { /* ... */ }- ✓Poprawna odpowiedź: Użyć typu mapowanego po
keyof Tw typie wyniku - 2Zwracać
Record<string, R> - 3Zwracać
object
Wyjaśnienie
Wywołujący zachowują autouzupełnianie i wykrywanie literówek w kluczach. Uwaga: Object.entries wewnątrz i tak traci typy kluczy i wymaga rzutowania.