slice
Return a shallow copy of a portion of an array.
Usage
var slice = require( '@stdlib/array/slice' );
slice( x[, start[, end]] )
Returns a shallow copy of a portion of an array.
var x = [ 1, 2, 3, 4, 5, 6 ];
var out = slice( x );
// returns [ 1, 2, 3, 4, 5, 6 ]
var bool = ( out === x );
// returns false
The function accepts the following arguments:
- x: input array.
- start: starting index (inclusive). Default:
0
. - end: ending index (exclusive). Default:
x.length
.
By default, the function returns a shallow copy beginning from the first element of the provided input array. To begin copying from an alternative element, provide a starting index (inclusive).
var x = [ 1, 2, 3, 4, 5, 6 ];
var out = slice( x, 2 );
// returns [ 3, 4, 5, 6 ]
By default, the function copies through the end of the provided input array. To copy up until a specific element, provide an ending index (exclusive).
var x = [ 1, 2, 3, 4, 5, 6 ];
var out = slice( x, 1, 4 );
// returns [ 2, 3, 4 ]
Notes
If provided an array-like object having a
slice
method, the function defers execution to that method and assumes that the method API has the following signature:x.slice( start, end )
If provided an array-like object without a
slice
method, the function copies input array elements to a new generic array.
Examples
var Float64Array = require( '@stdlib/array/float64' );
var zeroTo = require( '@stdlib/array/zero-to' );
var slice = require( '@stdlib/array/slice' );
var x = zeroTo( 6, 'float64' );
// returns <Float64Array>[ 0.0, 1.0, 2.0, 3.0, 4.0, 5.0 ]
var s = slice( x );
// returns <Float64Array>[ 0.0, 1.0, 2.0, 3.0, 4.0, 5.0 ]
s = slice( x, 0, 4 );
// returns <Float64Array>[ 0.0, 1.0, 2.0, 3.0 ]
s = slice( x, 2 );
// returns <Float64Array>[ 2.0, 3.0, 4.0, 5.0 ]
s = slice( x, 2, 4 );
// returns <Float64Array>[ 2.0, 3.0 ]