March 21, 2001 - The Scope of a Code | WebReference

March 21, 2001 - The Scope of a Code

Yehuda Shiran March 21, 2001
The Scope of a Code
Tips: March 2001

Yehuda Shiran, Ph.D.
Doc JavaScript

JavaScript distinguishes between three execution contexts: Global code, Eval code, and Function code. When the browser switches a context, a new scope is determined. The scope determines which variables, objects, and functions are accessible from the execution context. For example, if the variable a is incremented inside the function foo(), which a is incremented, the one defined inside foo(), or the one defined in the main code?

The scope is determined solely on the the variable object that is being created upon entering the new execution context, and destroyed upon leaving it. The variable object holds variables and functions that are currently active. The scope also includes the this object. When you refer to this, which object are you referring to?