TypedArray.prototype.slice()
The slice()
method returns a new typed array (with a new
underlying buffer), that contains a copy of a portion of the original typed array. This
method has the same algorithm as Array.prototype.slice()
.
TypedArray is one of the typed array types here.
Try it
Syntax
slice()
slice(start)
slice(start, end)
Parameters
start
Optional-
Zero-based index at which to begin extraction.
A negative index can be used, indicating an offset from the end of the sequence.
slice(-2)
extracts the last two elements in the sequence.If
start
is undefined,slice
begins from index0
. end
Optional-
Zero-based index before which to end extraction.
slice
extracts up to but not includingend
.For example,
slice(1,4)
extracts the second element through the fourth element (elements indexed 1, 2, and 3).A negative index can be used, indicating an offset from the end of the sequence.
slice(2,-1)
extracts the third element through the second-to-last element in the sequence.If
end
is omitted,slice
extracts through the end of the sequence (typedarray.length
).
Return value
A new typed array containing the extracted elements.
Description
The slice
method does not alter the original typed array, but instead returns a copy of a portion of the original typed array. As typed arrays only store primitive values, the copy the slice
method returns is always a deep copy.
If an element is changed in either typed array, the other typed array is not affected.
Examples
Return a portion of an existing typed array
const uint8 = new Uint8Array([1, 2, 3]);
uint8.slice(1); // Uint8Array [ 2, 3 ]
uint8.slice(2); // Uint8Array [ 3 ]
uint8.slice(-2); // Uint8Array [ 2, 3 ]
uint8.slice(0, 1); // Uint8Array [ 1 ]
Specifications
Specification |
---|
ECMAScript Language Specification # sec-%typedarray%.prototype.slice |
Browser compatibility
BCD tables only load in the browser