Присваивание функций. Функциональный тип данных
JavaScript позволяет выполнять над функциями один фокус — присваивать функции переменным.
Пример:
var someFunc;
someFunc = cmp;
Здесь мы присвоили переменной someFunc объявленную ранее функцию cmp. Заметим, что в этом случае справа от оператора присваивания указывают только имя функции без скобок и параметров.
Впоследствии мы можем вызывать данную функцию, обратившись к переменной, которой она была присвоена:
c = someFunc(1, 2, 3);
Здесь мы вызвали функцию cmp через переменную someFunc.
Переменная, которой была присвоена функция, хранит данные, относящиеся к функциональному типу . Это еще один тип данных, поддерживаемый JavaScript.
А можно сделать и так:
var someFunc = function(c, d, e) {
var f;
f = divide(c, d) + e;
return f;
}
Здесь мы объявили функцию и сразу же присвоили ее переменной. Как видим, имени объявляемой функции мы не указали — в данном случае оно не нужно.
А еще JavaScript позволяет нам указать функцию в качестве параметра другой функции. Для примера давайте рассмотрим фрагмент JavaScript-кода нашего второго Web-сценария:
ceLinks.on("mouseover", function(e, t) { Ext.get(t). addClass("hovered");
});
Здесь второй параметр функции on (вообще-то, это не функция, а метод объекта, но об этом потом) — другая функция, объявленная там же. Эта функция принимает два параметра и содержит одно выражение.
В следующих главах, изучая библиотеку Ext Core, мы будем часто сталкиваться с функциями, которые присваиваются переменным и передаются в качестве параметра другим функциям. Настолько часто, что скоро привыкнем к этому.
Дата добавления: 2015-05-08; просмотров: 719;