Disons que le type suivant est défini:
interface Shape {
color: string;
}
À présent, envisagez les méthodes suivantes pour ajouter des propriétés supplémentaires à ce type:
Extension
interface Square extends Shape {
sideLength: number;
}
Intersection
type Square = Shape & {
sideLength: number;
}
Quelle est la différence entre les deux approches?
Et, par souci d'exhaustivité et par curiosité, existe-t-il d'autres moyens d'obtenir des résultats comparables?