Далее на странице...

Продолжая тему функций в JavaScript, следует выделить понятие область видимости переменных. Его суть заключается в том, что если переменная создается внутри функции, то она является локальной, и работать с ней можно только в пределах текущей области видимости, то есть только внутри этой функции.
Если же переменная создается вне функции, то она является глобальной и может использоваться в любом месте программы, в том числе и внутри функции.
Глобальные переменные в JavaScript

Что понять, что такое глобальные переменные, следует создать произвольную переменную вне функции. Затем как-то ее использовать, например, вывести значение переменной на экран. Это можно будет сделать как вне функции, так и внутри нее.
<script type="text/javascript">
var global = 21; /* Переменная создана вне функции. Она является глобальной */
function myFun() /* Функция myFun вывод на экран значения переменной global */
{
document.write(global);
}
myFun(); /* Вызов функции */
document.write(global); /* Вывод на экран переменной global вне функции */
</script>
21
21
Локальные переменные в JavaScript

Для понимания, что такое локальные переменные, следует создать произвольную переменную внутри функции. И так же как в предыдущем примере вывести на экран ее значение. Но сделать это получится только внутри функции.
<script type="text/javascript">
function myFun ()
{
var local = 21; /* Создание локальной переменной внутри функции */
document.write(local); /* Вывод значения переменной на экран */
}
myFun(); /* Вызов функции */
document.write(local); /* Попытка вывода на экран локальной переменной вне функции */
</script>
21
Пример иллюстрирует, что локальная переменная, созданная в пределах функции, может использоваться только внутри нее.
Итак, переменная в JavaScript может быть локальной или глобальной.
Локальные переменные создаются внутри функций и не могут быть использованы в других местах программного кода. А глобальные переменные создаются вне функций и с ними можно работать везде. В этом заключается понятие область видимости переменных.