i have this object literal
let p = {
name : 'Amir',
say: () => {
console.log(this.name)
console.log(this)
}
}
and I want the say function works using this
p.say();
but the arrow function obviously gets the window object as 'this'
. I know I could use a regular function for 'say'
instead of arrow and it will work fine.
BUT
I would like to ONLY change the call to say function to make it work, but the binding won't work.
I mean something like p.say.bind(p)()
or p.say.call(p)
aint gonna work as desired.
Is it possible to change the call to function ONLY and not the say function?