馃敟 CLASSES, SETTERS Y GETTERS

Las clases tambi茅n pueden tener setters (m茅todos que asignan) y getters (m茅todos que retraen valores), a estos se les llama accesors.

class Desfile {
    private _participantes = 0;

    get participantes(): number {
        return this._participantes;
    }

    set participantes(v: number) {
        this._participantes = v;
    }
}

const desfileHoy = new Desfile();
desfileHoy.participantes = 100;
console.log(desfileHoy.participantes); // <- 100

Toma en cuenta que el uso de set/get sin l贸gica adicional, es raramente utilizado en JavaScript. Por ello exponer las propiedades como p煤blicas y escribir el valor sobre ellas.

TypeScript tiene algunas reglas de inferencia para el uso de accessors (setters/getters).

  • Si no existe set, la propiedad es autom谩ticamente readonly.
  • El tipo del setter es inferido del tipo de retorno del getter.
  • Si el setter tiene definido el tipo, debe coincidir con el tipo de retorno del getter.
  • No se puede tener setters y getters asociados a diferentes tipos.