Before one can make an intuition of closures in JavaScript, it’s important to first get the hang of the term ‘lexical environment’. In simple words, the lexical environment for a function f
simply refers to the environment enclosing that function’s definition in the source code.
Visit the following resources to learn more: