четверг, 1 июня 2017 г.

Sorax. 14. Цепочки областей видимости

// Область видимости переменной - это часть программы, где эта переменная определена и доступна.
// Глобальные переменные объявлены вне к-л функций.
// Перемены, объявленные внутри функции, являются локальными.



var i = 5;
var func = function() {
var i = 10;
console.log(i);
// Функции м.б вложенными
var innerFunc = function() {
console.log(i); // undefined
var i = 15; // это еще одна локальная переменная

};
innerFunc();
console.log(i);
};

func(); // 10

// Локальная переменная имеет наибольший приоритет.
// В JS только функции создают локальную область видимости.

// Вложенные функции создают цепочки областей видимости.

// При объявлении глобальных переменных мы можем не писать ключевое слово var.
// При объявлении локальных пишется. Иначе мы будем менять переменную, которая находится следующей в области видимости в цепочке.

// Если обратиться к переменной до того, как она объявлена, то выводится undefined. Такое поведение называется ПОДЪЕМ.

// В JS переменные обычно объявляют в начале функции.

Комментариев нет:

Отправить комментарий