При работе с функциями возникает вопрос: «Отличаются ли локальные переменные, объявленные в теле функции, от глобальных переменных, объявленных за пределами?»
Работа с переменными в теле функции подчиняется следующим правилам.
· Если переменная объявлена с помощью ключевого слова var, доступ к ней осуществляется по правилам, подобным тем, которые используются в языке C.
· Переменная, объявленная внутри функции, считается локальной. Область видимости такой переменной ограничивается телом функции, в которой она объявлена.
· Переменная, объявленная вне функции, считается глобальной. К ней можно обращаться из любой точки сценария.
· Если локальная и глобальная переменные имеют одинаковые имена, то в теле функции локальная переменная «маскирует» глобальную.
· Если переменная создается автоматически, т. е. если она не объявлена с помощью ключевого слова var, но присутствует в левой части оператора прямого присваивания, то она считается глобальной и становится доступной из любой точки сценария.