Name
Array.slice() — return a portion of an array
Synopsis
array
.
slice
(
start
,
end
)
Arguments
start
The array index at which the slice is to begin. If negative, this argument specifies a position measured from the end of the array. That is, −1 indicates the last element, −2 indicates the next from the last element, and so on.
end
The array index immediately after the end of the slice. If not specified, the slice includes all array elements from the
start
to the end of the array. If this argument is negative, it specifies an array element measured from the end of the array.
Returns
A new array that contains the elements of
array
from the element specified by
start
, up to, but not including, the
element specified by end
.
Description
slice()
returns a slice, or
subarray, of array
. The returned array
contains the element specified by start
and all subsequent elements up to, but not including, the element
specified by end
. If
end
is not specified, the returned array
contains all elements from the start
to
the end of array
.
Note that slice()
does not
modify the array. If you want to actually remove a slice of an
array, use Array.splice()
.
Example
var
a
=
[
1
,
2
,
3
,
4
,
5
];
a
.
slice
(
0
,
3
);
// Returns [1,2,3]
a
.
slice
(
3
);
// Returns [4,5]
a
.
slice
(
1
,
-
1
);
// Returns [2,3,4]
a
.
slice
(
-
3
,
-
2
);
// Returns [3]; buggy in IE 4: returns [1,2,3]
Bugs
start
can’t be a negative number in
Internet Explorer 4. This is fixed in later versions of IE.
See Also
Get JavaScript: The Definitive Guide, 6th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.