Array.slice()
Возвращает фрагмент массива.
Спецификация: ECMAScript 3-е издание.Синтаксис
array.slice(start, end)
Параметры
- start
- Целое число, указывающее с какого индекса начинать выбор элементов (первый элемент имеет индекс 0).
Допускается использование отрицательных значений, в этом случае индекс с которого будет произведен выбор элементов расчитывается по следующей формуле:
length (длина массива) + start
. Еслиstart
опущен, то значение по умолчанию будет соответствовать 0. - end
- Целое число, определяющее индекс по которому заканчивать извлечение элементов массива. Если этот параметр не указан, то будут выбраны все элементы от начальной позиции
start
и до конца массива. Допускается использование отрицательных значений, в этом случае индекс с которого будет произведен выбор элементов расчитывается по следующей формуле:length (длина массива) + end
.
Возвращаемое значение
Новый массив, содержащий выбранные элементы.
Описание
Метод slice() возвращает новый массив, содержащий элементы массива от элемента, заданного аргументом начало start
, до элемента, определяемого аргументом конец end
, но не включая его.
Если аргумент end
не указан, возвращаемый массив содержит все элементы от элемента, заданного аргументом start
, до конца массива.
На заметку: slice() не изменяет массив. Для удаления фрагмента массива следует использовать метод splice().
Примеры
В следующем примере метод slice()
создаёт новый массив newCar
из массива myCar
. Оба содержат ссылку на объект myAudi
. Когда цвет в объекте myAudi
изменяется на багровый, в обоих массивах отражается это изменение:
Из примера видно, что метод slice()
копирует ссылки на объекты в новый массив. И оригинал, и новый массив ссылаются на один и тот же объект. То есть, если объект по ссылке будет изменён, изменения будут видны и в новом, и в исходном массивах.
Поддержка браузерами
Метод | |||||||
slice | 1.0 | Да | Да | Да | 1.0 | Да | Да |
Комментарии
<code>
, несколько строчек кода — в теги<pre><code>
...ваш код...</code></pre>
.