馃敟 CLASSES, ARROW FUNCTIONS (FUNCIONES TIPO FLECHA)

Si tienes una funci贸n cuyo que frecuentemente pierde el contexto de su valor this, puede tener sentido utilizar una arrow function (funci贸n tipo flecha) en lugar de la funci贸n habitual.

class MiClase {
    nombre = "MiClase";

    getNombre = () => {
        return this.nombre;
    };
}

const miClase: MiClase = new MiClase();

const obj: MiClase = {
    nombre: "obj",
    getNombre: miClase.getNombre,
};

console.log(obj.getNombre());
MiClase;

El uso de arrow functions viene con algunas ventajas.

  • El valor de this esta garantizado para ser el correcto en tiempo de ejecuci贸n, aun cuando el c贸digo no ha sido verificado con TypeScript.
  • Esto usualmente utiliza mas memoria, debido a que cada clase tendra su propia copia de cada una de las funciones definidas de esta forma.
  • No se puede utilizar super.getNombre en una clase derivada.