Toutes les caractéristiques suivantes ont été rétroportées dans TypeScript, sauf…

L'absence de rétroportage des méthodes en TypeScript

TypeScript est un langage de programmation qui est un sur-ensemble de JavaScript. Il ajoute du typage statique et des fonctionnalités de programmation orientée objet à JavaScript. Cependant, parmi les nombreuses fonctionnalités apportées à JavaScript par TypeScript, une fonctionnalité n'a pas été rétroportée, c'est-à-dire n'a pas été ramenée à la version précédente de JS : les "méthodes".

Contrairement à d'autres caractéristiques telles que les flèches, les classes et les modules, les méthodes en TypeScript ne sont pas une rétroportation de JavaScript.

Une "méthode" est une fonction associée à un objet, ou, simplement mis, une propriété d'objet qui est une fonction. L'exemple suivant illustre une méthode en JavaScript :

let obj = {
  name: 'Objet',
  greet: function() {
    console.log('Bonjour, ' + this.name);
  }
};

obj.greet(); // Bonjour, Objet

Dans TypeScript, les méthodes sont définies de la même manière que dans JavaScript. Cependant, TypeScript introduit des fonctionnalités supplémentaires et une syntaxe plus simple et concise pour définir les méthodes, comme le montre l'exemple suivant :

class MyClass {
  name: string;

  constructor(name: string) {
     this.name = name;
  }

  greet() {
    console.log(`Bonjour, ${this.name}`);
  }
}

let myObj = new MyClass('Objet');
myObj.greet(); // Bonjour, Objet

De plus, TypeScript introduit des méthodes statiques, qui appartiennent à la classe elle-même et non à une instance de celle-ci. Cela offre un moyen plus propre et plus sûr d'implanter des fonctionnalités que tous les objets d'une certaine classe partagent.

L'absence de rétroportage des méthodes de TypeScript à JavaScript s'explique principalement par le fait que la gestion des méthodes en TypeScript est beaucoup plus robuste, offrant des outils supplémentaires et une syntaxe améliorée pour la définition et l'utilisation des méthodes.

En conclusion, bien que TypeScript partage de nombreuses caractéristiques avec JavaScript, il offre également des améliorations substantielles, en particulier dans la façon dont il traite les méthodes.

Trouvez-vous cela utile?