- •Интернет-программирование
- •ИП. JavaScript. Лексическая область видимости
- •ИП. История JavaScript МИЭТ, 2017
- •ИП. Особенности JavaScript
- •ИП. JavaScript. Прототипное ООП
- •ИП. JavaScript. Наследование в прототипном стиле.
- •ИП. JavaScript. Функции как объекты первого класса
- •ИП. JavaScript. Прототипное ООП. Функции как методы объекта
- •ИП. JavaScript. Прототипное ООП. Зачем такой выбор?
- •ИП. JavaScript. Прототипное ООП. Функции как методы объекта
- •ИП. JavaScript. Лексическая область видимости
- •ИП. JavaScript. Лексическая область видимости
- •ИП. JavaScript. Поднятие переменных
- •ИП. JavaScript. Область видимости
- •ИП. JavaScript. Объявления функций
- •ИП. JavaScript. Функция, как свойство
- •ИП. JavaScript. Функция, как свойство
- •ИП. JavaScript. Скобки и функции
- •ИП. JavaScript. Цепочка вызовов
- •ИП. JavaScript. Цепочка вызовов
- •ИП. Распространенность JavaScript
- •ИП. Распространенность JavaScript
- •ИП. Быстродействие JavaScript
- •ИП. JavaScript. Возможности языка
- •ИП. JavaScript. Поддержка в оборудовании
- •ИП. JavaScript. Поддержка в оборудовании
- •ИП. JavaScript. Поддержка в оборудовании
- •ИП. JavaScript. Node.js
- •ИП. JavaScript. Node.js
- •ИП. JavaScript. Node.js
- •ИП. JavaScript. Node.js
- •ИП. JavaScript. Node.js
- •ИП. JavaScript. Базы данных
- •ИП. Язык JavaScript. Источники информации
- •ИП. Премия имени Грейс Мюррей Хоппер
ИП. JavaScript. Лексическая область видимости |
МИЭТ, 2017 |
Если убираем var, то переменная ищется по всей цепочке наверх, пока не встретит var или не закончится цепочка вызовов
ИП. JavaScript. Лексическая область видимости |
МИЭТ, 2017 |
Функция сохраняет привязку к своей области видимости независимо от глубины вызова
ИП. JavaScript. Поднятие переменных |
МИЭТ, 2017 |
Поскольку области видимости для функций можно сделать иерархичными, то можно этим воспользоваться
для того, чтобы во вложенных функциях изменять значения вышележащих переменных
ИП. JavaScript. Область видимости |
МИЭТ, 2017 |
|
Функции определяют |
Условные конструкции и циклы |
|
(замыкают) область видимости |
||
не ограничивают область видимости. |
||
|
Переменная timeout внутри F является локальной переменной этой функции
Переменная timeout внутри if становится Локальной переменной функции Lection
ИП. JavaScript. Объявления функций |
МИЭТ, 2017 |
Function Declaration |
Function Expression |
privetVuz("MИЭТ"); // Привет, МИЭТ |
privetVuz("MИЭТ"); // не сработает |
function privetVuz(name) { |
var privetVuz = function(name) { |
alert( "Привет, " + name ); |
alert( "Привет, " + name ); |
} |
} |
Можно вызвать в любом месте кода |
Нельзя вызвать переменную, |
В области, где функция видная |
которая не определена |
ИП. JavaScript. Функция, как свойство |
МИЭТ, 2017 |
Функция getRating динамически добавляется как метод в функцию Vuz. Однако переменную rating функции Vuz она не видит т. к. была изначально Определена вне функции Vuz и поэтому локальные переменные функции Vuz ей недоступны
ИП. JavaScript. Функция, как свойство |
МИЭТ, 2017 |
Функция getRating может видеть свойства функции Vuz т. к. свойства функции Vuz видны в глобальной области видимости
ИП. JavaScript. Скобки и функции |
МИЭТ, 2017 |
ИП. JavaScript. Цепочка вызовов |
МИЭТ, 2017 |
Пример из http://learn.javascript.ru
ИП. JavaScript. Цепочка вызовов |
МИЭТ, 2017 |
Пример из http://learn.javascript.ru
