typescript / intermediate
Snippet
Generics mit keyof-Constraints
Die Verwendung von 'keyof' mit Generics stellt sicher, dass ein Funktionsparameter ein gültiger Schlüssel eines spezifischen Objekts ist, was volle Typsicherheit und IDE-Autovervollständigung bietet.
snippet.ts
1
2
3
4
5
6
function getProperty<T, K extends keyof T>(obj: T, key: K) {return obj[key];}const user = { id: 1, name: "Bob" };const userName = getProperty(user, "name");
Erklärung
1
K extends keyof T
Beschränkt den generischen Typ K auf Schlüssel, die tatsächlich auf Typ T existieren.
2
obj[key]
TypeScript weiß genau, welchen Typ der Rückgabewert basierend auf dem verwendeten Schlüssel haben wird.