Вспомогательные функции
Многие фреймворки JavaScript содержат большое количество служебных функций, которые упрощают разработку приложений с использованием JavaScript. К этой статье можно многое добавить, поэтому я расскажу об одной из наиболее интересных функций большинства фреймворков.
Если вы когда-либо работали с массивами JavaScript , вы, вероятно, знакомы с использованием циклов для перебора массива и манипулирования его значениями. Например, рассмотрим код в листинге 2:
Листинг 2. Традиционный способ перебора массива JavaScript.
var Fruit = ['яблоко', 'банан', 'апельсин'];
for(var i = 0; i <fruit.length; i++) {
оповещение(фрукты[я]);
}
Код в листинге 2 правильный, но он немного громоздкий. Большинство фреймворков JavaScript включают функциюeach, которая вызывает определенную функцию для каждого элемента массива. Используя MooTools, те же операции, что и в листинге 2, можно выполнить с помощью кода из листинга 3.
Листинг 3. Использование каждой функции MooTools
['яблоко', 'банан', 'апельсин'].each(function(item) {
оповещение (элемент);
});
Листинг 3 синтаксически идентичен Prototype и jQuery, с небольшими различиями между YUI и ExtJS. Однако синтаксис различен в разных платформах при применении к хешам или объектам. Например, в MooTools вы можете использовать код из следующего листинга:
Листинг 4. Использование каждой функции MooTools для отдельных объектов пар ключ/значение
var hash = new Hash({name: «Джо Леннон», электронная почта: « [email protected] »});
hash.each(функция(значение, ключ) {
предупреждение (ключ + ": " + значение);
});
Однако при использовании библиотеки Prototype это выглядит точно так же, как код в листинге 5:
Листинг 5. Использование каждой функции Prototype для отдельных объектов пар ключ/значение
var hash = $H({name: "Джо Леннон", адрес электронной почты: " [email protected] "});
hash.each(функция(пара) {
alert(pair.key + ": " +pair.value);
});
Каждая структура содержит множество более практичных функций, обычно разделяемых на строковую функцию, числовую функцию, функцию массива, хеш-функцию, функцию даты и т. д. Чтобы узнать больше, обратитесь к руководству по API соответствующей платформы JavaScript.
Адрес перепечатки: http://www.denisdeng.com/?p=716 .
Исходный адрес: http://www.ibm.com/developerworks/web/library/wa-jsframeworks/index.html.