What is this?
basically the context of the function
it depends on how the function is called (there are many rules that affects the context of this)
- called with
new? use newly constructed object call()andapply()andbind()? use specified object- called with context object owning the call? use context object
- default:
undefinedin strict mode; else global object
more detailed rules of this here (opens in a new tab)