TypeScript 4.9 RC apporte les auto-accessors

Par:
fredericmazue

jeu, 03/11/2022 - 13:46

Microsoft a annoncé la disponibilité de TypeScript 4.9 en version Release Candidate. Lors de la sortie de TypeScript 4.9 Bêta, nous vous avions parlé de l'arrivée du nouvel opérateur satisfies qui répond à une problématique courante en programmation TypeSctipt : s'assurer qu'une expression correspond à un type, tout en souhaitant également conserver le type le plus spécifique de cette expression à des fins d'inférence.

Pour cela, le nouvel opérateur satisfies permet de valider que le type d'une expression correspond à un certain type, sans changer le type résultant de cette expression.

TypeScript 4.9 RC se fait remarquer par la prise en charge en charge d'une fonctionnalité à venir dans ECMAScript appelée auto-accessors. Les auto-accesseurs sont déclarés comme les propriétés sur les classes, sauf qu'ils sont déclarés avec le mot clé accessor. Par exemple :

class Person {
    accessor name: string;

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

Sur le capot, ce mot clé, qui est un sucre syntaxique, provoque la génération de deux accesseurs classiques pour une propriété privée.

class Person {
    #__name: string;

    get name() {
        return this.#__name;
    }
    set name(value: string) {
        this.#__name = name;
    }

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