Над всеми элементами массива необходимо провести какие-либо преобразования.

Опубликовал: Вторник, Июнь 25, 2013 в категории jQuery, Подборка рецептов | Пока нет комментариев

Решение

Для решения такой задачи хорошо подходит вспомогательная функция

$.map(array, callback(elementOfArray, indexInArray)) (листинг 10.1.7).

Листинг 1 0 .1 .7 . Использование вспомога те л ьной ф ун к ции $.map()

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru" xml:lang="ru">
<head>
<title>example-10-1-7</title>
<content>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="js/jquery-1.5.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
var arr = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"];
$("p:first").text(arr.join(", ")); arr = $.map(arr, function(n, i){
return (n.toUpperCase() + i);
});
$("p:last").text(arr.join(", "));
});
</script>
</head>
<body>
<p></p>
<p></p>
</body>
</html>

Обсуждение

HTML-код, приведенный в листинге 10.1.7, — два элемента p, которые придают наглядность примеру.

В самом начале JavaScript-кода определяем массив arr. Объединим этот массив в строку и вставим в первый элемент p. Затем вызовем вспомогательную функцию

$.map(), которой в качестве первого аргумента передадим массив arr, в качестве второго аргумента выступает функция, выполняющая преобразования над каждым элементом массива. Функция может принимать два аргумента — значение элемента массива и его индекс.

Значение каждого элемента массива переведем в верхний регистр и добавим к нему его индекс. Получившийся массив объединим в строку и выведем во втором элементе p.

Источник: Самков Г. А. jQuery. Сборник рецептов. — 2-е изд., перераб. и доп. — СПб.: БХВ-Петербург, 2011. — 416 с.: ил. + CD-ROM — (Профессиональное программирование)

Похожие посты:

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

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>