Types keyof et d’accès indexé (introduction)
Utilisez keyof pour créer des unions de noms de propriétés et les types d’accès indexé (T[K] / T["prop"]) pour lire les types de propriétés en toute sécurité.
Types keyof et d’accès indexé (introduction) est une leçon TypeScript Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 3. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage TypeScript Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours TypeScript Academy comprend 3 leçons au total.
Introduction
Objectif : créer des fonctions utilitaires plus sûres avec keyof (unions de noms de propriétés) et l'accès indexé (T[K]) pour lire les types des propriétés.
keyof
keyof produit une union des noms de propriétés d'un type (par exemple, "id" | "name" | "email").
interface User {
id: number;
name: string;
email?: string;
}
type UserKeys = keyof User; // "id" | "name" | "email"keyof typeof
Utilisez keyof typeof pour obtenir les clés d'une valeur (un objet) afin de typer les paramètres.
const SETTINGS = {
theme: "dark",
lang: "en",
} as const;
type SettingKey = keyof typeof SETTINGS; // "theme" | "lang"Accès indexé
Un accès indexé renvoie le type d'une propriété : User["name"] est de type string.
interface User {
id: number;
name: string;
email?: string;
}
type NameType = User["name"]; // string
Fonction utilitaire getProperty
Combinez keyof avec K extends keyof T pour restreindre les clés et renvoyer le type précis T[K].
function getProperty<T, K extends keyof T>(obj: T, key: K): T[K] {
return obj[key];
}
const u = { id: 1, name: "Ada" };
const v1 = getProperty(u, "name"); // string
const v2 = getProperty(u, "id"); // number
console.log(v1.toUpperCase(), v2.toFixed(0));Conseils
Conseils :
- Privilégiez keyof typeof pour les clés provenant d'objets.
- Utilisez T[K] pour refléter les types des propriétés sans dupliquer les modèles.
- Évitez les clés typées par des chaînes de caractères ; appuyez-vous sur les unions pour la sûreté.
Vérification de l'accès indexé
Vérification rapide : que représente T[K] ?
Récapitulatif
Récapitulatif : keyof fournit des unions de clés ; keyof typeof déduit les clés à partir des valeurs ; T[K] lit les types des propriétés, ce qui est idéal pour des fonctions utilitaires sûres.
Apprends TypeScript avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 101
- Leçons
- 352
Questions Fréquemment Posées
La leçon « Types keyof et d’accès indexé (introduction) » est-elle gratuite ?
Oui — le texte complet de « Types keyof et d’accès indexé (introduction) » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours TypeScript Academy, passe à CoddyKit PRO. Le cours TypeScript Academy comprend 3 leçons au total.
Qu'est-ce que j'apprendrai dans « Types keyof et d’accès indexé (introduction) » ?
Utilisez keyof pour créer des unions de noms de propriétés et les types d’accès indexé (T[K] / T["prop"]) pour lire les types de propriétés en toute sécurité. Tu pratiques TypeScript Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer TypeScript Academy ?
Aucune expérience préalable n'est requise. TypeScript Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 3.
Combien de temps prend la leçon « Types keyof et d’accès indexé (introduction) » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon TypeScript Academy ?
Oui. Chaque leçon TypeScript Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Fonctions génériques et contraintes (extends, paramètres par défaut)
- Partial, Readonly, Record, Pick, Omit
- Types keyof et d’accès indexé (introduction)