Do two calls to the same function share their variable environment?
No. Each invocation creates a fresh variable environment. Local variables are not shared between calls. To persist state across calls, use a closure.
Verify This Answer
Cross-check this information using these trusted sources:
More FAQs in Variable Environment in JavaScript Explained
The container that holds the function's local state for a given call: parameters, var/let/const declarations, inner function declarations, and the arguments object. A new one is created per invocation.
The variable environment holds the current call's locals. The scope chain is the chain of outer environment references used to resolve variables not found locally, built lexically at write time.
Yes, in regular (non-arrow) functions. The arguments object is created during the memory phase and holds all passed arguments. Arrow functions do not have their own arguments object.
Still have questions?
Browse all our FAQs or reach out to our support team
