Ajout de méthodes aux interfaces
Fait partie de la section Introduction à TypeScript du Journey JavaScript de Coddy. Leçon 43 sur 73.
Les interfaces TypeScript vous permettent de définir ces comportements en incluant des signatures de méthodes à côté des définitions de propriétés.
La signature d’une méthode dans une interface spécifie le nom d’une méthode, ses paramètres et son type de retour, sans fournir l’implémentation réelle. Cela crée un contrat que tout objet conforme à l’interface doit respecter :
interface Person {
name: string;
age: number;
greet(): string; // Method signature
}
let user: Person = {
name: "Alice",
age: 30,
greet() {
return `Hello, I'm ${this.name}`;
}
};La signature de méthode greet(): string indique à TypeScript que tout objet implémentant l’interface Person doit avoir une méthode greet qui ne prend aucun paramètre et renvoie une chaîne de caractères. L’implémentation réelle peut varier selon les objets, mais la signature doit correspondre exactement.
Défi
FacileCréez une interface nommée Calculator avec les propriétés et méthodes suivantes :
brandde typestringmodelde typestringisScientificde typeboolean- la méthode
addqui prend deux paramètres de typenumberet renvoie unnumber - la méthode
getInfoqui ne prend aucun paramètre et renvoie unestring
Créez une interface nommée BankAccount avec les propriétés et méthodes suivantes :
accountNumberde typestringbalancede typenumberisActivede typeboolean- la méthode
depositqui prend un paramètre de typenumberet renvoievoid - la méthode
getBalancequi ne prend aucun paramètre et renvoie unnumber
En utilisant vos interfaces, créez les variables suivantes :
- Créez une variable nommée
myCalculatorde typeCalculatoravec la marque"Casio", le modèle"FX-991EX",isScientificdéfini surtrue, une méthodeaddqui renvoie la somme de ses deux paramètres et une méthodegetInfoqui renvoie"[brand] [model]" - Créez une variable nommée
savingsAccountde typeBankAccountavecaccountNumberégal à"SAV-12345",balanceégal à1500,isActivedéfini surtrue, une méthodedepositqui ajoute le paramètre au solde et une méthodegetBalancequi renvoie le solde actuel
Affichez les résultats suivants sur des lignes séparées :
- Appelez la méthode
getInfosurmyCalculatoret affichez le résultat - Appelez la méthode
addsurmyCalculatoravec les arguments15et27, puis affichez le résultat - Appelez la méthode
getBalancesursavingsAccountet affichez le résultat - Appelez la méthode
depositsursavingsAccountavec l'argument250 - Appelez à nouveau la méthode
getBalancesursavingsAccountet affichez le résultat - Affichez la propriété
isScientificdemyCalculator
Essayez vous-même
// TODO: Écrivez votre code ici
// Créez l'interface Calculator avec les propriétés et méthodes requises
// Créez l'interface BankAccount avec les propriétés et méthodes requises
// Créez la variable myCalculator de type Calculator
// Créez la variable savingsAccount de type BankAccount
// Affichez toutes les sorties requisesCette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Introduction à TypeScript
1Premiers pas avec TS
Qu'est-ce que TypeScript ?Pourquoi utiliser TypeScript ?Votre premier code TypeScriptProcessus de compilation et erreursRécapitulatif : Introduction à TS4Travailler avec les fonctions
Typage des paramètres et valeurs de retourTypage des fonctions fléchéesLe type de retour 'void'Paramètres optionnels avec '?'Valeurs par défaut des paramètresTypage des paramètres RestDéfinir des types de fonctionsRécapitulatif : Créer des fonctions typées2Types fondamentaux
Types de base : str, num, booleanLe type 'any' : la porte de sortieLe type 'unknown'Travailler avec 'null' et 'undef'L'inférence de type en actionAnnotations de type explicitesRécapitulatif : Pratique des types fondamentaux5Types : Alias, Unions & Intersections
Alias de types pour les primitifsTypes d'union ('|')Travailler avec les types d'unionTypes littérauxTypes d'intersection ('&')Combiner des alias de typesRécapitulatif : Combinaisons de types avancées3Structure de données : Tableaux et Tuples
Tableaux typésModificateur 'readonly' pour les tableauxQu'est-ce qu'un tuple ?Déclaration et accès aux tuplesDéstructuration de tuplesTuples readonlyTableaux typés multidimensionnelsSpread operator avec les tableauxRécapitulatif : Tableaux et tuples6Typage des objets et interfaces
Annotations de type d'objet en ligneAlias de type pour les objetsIntroduction aux interfacesInterfaces vs Alias de typePropriétés optionnelles et ReadonlyÉtendre les interfaces et les typesAjout de méthodes aux interfacesRécapitulatif : Définir la structure des objetsEntraînez-vous par vous-même : Compilateur JavaScript en ligne