Scope

BrightScript uses the following scoping rules:

  • Global variables are not supported; however, there is a single hard-coded global variable (“global”) that is an interface to the global BrightScript object, which contains all global library functions.

  • Functions declared with the Function statement are global in scope; however, if the function is anonymous, it will still be local in scope.

  • Local variables exist within the function scope. If a function calls another function, that new function has its own scope.

  • Labels exist within the function scope.

  • Block statements such as For / End For and While / End While do not create a separate scope.