TypeScript · Middle · Frage 46 von 75
Was macht keyof typeof obj?
const routes = { home: '/', about: '/about' };
type RouteName = keyof typeof routes;- 1Erzeugt einen Fehler:
keyoflässt sich nicht auftypeofanwenden - 2Liefert die Union der Schlüssel des Werts
routes:'home' | 'about' - 3Liefert die Union der Werte:
'/' | '/about'
Antwort zeigen
Richtige Antwort: Liefert die Union der Schlüssel des Werts routes: 'home' | 'about'
Erklärung
typeof routes liefert den Typ des Objekts, keyof seine Schlüssel. Für eine Union der Werte braucht man einen indizierten Zugriff: typeof routes[keyof typeof routes], und as const, damit die Werte Literale sind.