acabo de crear un objeto con una función de flecha:
const user={ fName:"0xN1nja", about:()=>{ return this.fName; } }ahora, cuando llamo a esa función de flecha con el método .call(), devuelve indefinido:
a=user.about.call(user); console.log(a); >>> undefinedPero cuando reemplacé esa función de flecha con una expresión de función normal, devuelve el valor
const user={ fName:"0xN1nja", about:function(){ return this.fName; } } a=user.about.call(user2); console.log(a); >>> 0xN1nja¿que está sucediendo aquí?
PD: soy nuevo en javascript
Las funciones de flecha no se unen a this como lo hacen las function . Esa es una de las principales razones por las que se introdujeron (probablemente la más importante).
Ni siquiera puedes bind .