Выделение фрагмента массива

В ActionScript существуют два способа выделения фрагмента массива в виде нового массива. Первый из них, связанный с использованием уже знакомого нам метода splice(), приемлем далеко не всегда, так как его применение сопровождается изменениями в исходном массиве. Например:

var arr:Array = [1, 2, 3];
var arrl = .arr.splice (1); // Выделяем последние два элемента массива
trace(arrl); // Выводит; 2, 3
trace(arr); // Выводит: 1 (массив arr был изменен)

Если необходимо выделить фрагмент, не изменив исходный массив, нужно обратиться к специальному методу slice(). Его синтаксис:

myArray.slice (start, end),
где:

• myArray — массив, из которого необходимо выделить фрагмент;
• start — индекс элемента, с которого начинается необходимый фрагмент. Если start задан как отрицательное число, то отсчет элементов происходит с конца массива начиная с -1;
• end — индекс элемента, перед которым заканчивается подлежащий выделению фрагмент. Если данный параметр опущен, то выделяется участок от start и до конца массива.

Метод slice() возвращает массив, являющийся копией некоторого участка другого массива. Пример:

trace[1,2,3,4,5].slice(2,4)); // Выводит: 3, 4
trace[1,2,3,4,5].slice(-3,-1)); // Выводит: 3, 4

Обратите внимание, что методы класса Array могут быть использованы не только по отношению к переменным, в которых сохранены массивы, но и непосредственно к литералам массивов.

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела Action Script на эту тему:
Длина массива. Свойство length
Добавление элементов в массив
Извлечение и переопределение элементов массива
Инверсия массива
Особенности использования цикла for—in для обработки массивов

Вернуться в раздел: Action Script / 7. Массивы (класс Array)