How is this binding resolved for arrow functions?

In an arrow function there is no this binding. So, arrow functions lexically resolve this reference. If we execute a function in different scope from where the function was defined, it remembers this reference. Does this behaviour happens due to closure ?

I know that function can remember its lexical environment by closure but in chrome developer tool this doesnot appear in closure but in local scope. Why does this happens ?

function outerScope(outerVar){
    let innerFun = () =>{
return innerFun;

let innerFun ={test: "testing this reference"},"outerVar");

enter image description here

48 thoughts on “How is this binding resolved for arrow functions?”

Leave a Comment