The function scope is the state of the scope chain as it was when the function was called, plus the call object added onto the end of the scope chain. The call object is the function being executed.
Because the call object is added to the scope chain, you don't need to refer to it explicitly and the current context inherits all its properties and methods.
The static properties of a regular expression object do not conform to the same static scoping rules. Their static or class based properties are dynamically scoped and available in the scope chain from which they are executed.