Slice
Slice constructor.
Usage
var Slice = require( '@stdlib/slice/ctor' );
Slice( [stop] )
Returns a Slice
instance.
var s = new Slice();
// returns <Slice>
s = new Slice();
// returns <Slice>
The constructor accepts the following arguments:
- stop: ending index (exclusive). Default:
null
.
Slice( start, stop[, step] )
Returns a Slice
instance.
var s = new Slice( 0, 10 );
// returns <Slice>
s = new Slice( 0, 10, 1 );
// returns <Slice>
The constructor accepts the following arguments:
- start: starting index (inclusive).
- stop: ending index (exclusive).
- step: index increment. A numeric index increment argument must be a non-zero integer value. Default:
null
.
Properties
Slice.name
String value of the Slice
constructor name.
var str = Slice.name;
// returns 'Slice'
Slice.prototype.start
Read-only property returning the slice starting index.
var s = new Slice( 10 );
// returns <Slice>
var start = s.start;
// returns null
s = new Slice( 2, 10 );
// returns <Slice>
start = s.start;
// returns 2
Slice.prototype.stop
Read-only property returning the slice ending index.
var s = new Slice( null );
// returns <Slice>
var stop = s.stop;
// returns null
s = new Slice( 10 );
// returns <Slice>
stop = s.stop;
// returns 10
s = new Slice( 2, 10 );
// returns <Slice>
stop = s.stop;
// returns 10
Slice.prototype.step
Read-only property returning the slice index increment.
var s = new Slice( 10 );
// returns <Slice>
var step = s.step;
// returns null
s = new Slice( 2, 10 );
// returns <Slice>
step = s.step;
// returns null
s = new Slice( 2, 10, 1 );
// returns <Slice>
step = s.step;
// returns 1
Methods
Slice.prototype.toString()
Serializes a Slice
as a string.
var s = new Slice( 10 );
// returns <Slice>
var str = s.toString();
// returns 'Slice(null,10,null)'
s = new Slice( 2, 10, 1 );
// returns <Slice>
str = s.toString();
// returns 'Slice(2,10,1)'
Slice.prototype.toJSON()
Serializes a Slice
as a JSON object.
var s = new Slice( 10 );
// returns <Slice>
var o = s.toJSON();
// returns { 'type': 'Slice', 'data': [ null, 10, null ] }
s = new Slice( 2, 10, 1 );
// returns <Slice>
o = s.toJSON();
// returns { 'type': 'Slice', 'data': [ 2, 10, 1 ] }
JSON.stringify()
implicitly calls this method when stringifying a Slice
instance.
Notes
- Slice arguments may be either integers,
null
, orundefined
, where a non-integer value indicates a slice parameter which should be determined based on the slice context (e.g., when used to index into anndarray
). - Slice instances have no explicit functionality; however, they are used by
ndarray
and other packages for creating views into multi-dimensional data structures.
Examples
var Slice = require( '@stdlib/slice/ctor' );
var s = new Slice( 9, -10, -1 );
// returns <Slice>
var start = s.start;
console.log( 'Start: %d', start );
// => 'Start: 9'
var stop = s.stop;
console.log( 'Stop: %d', stop );
// => 'Stop: -10'
var step = s.step;
console.log( 'Step: %d', step );
// => 'Step: -1'
var str = s.toString();
console.log( str );
// => 'Slice(9,-10,-1)'
var o = s.toJSON();
console.log( JSON.stringify( o ) );
// => '{"type":"Slice","data":[9,-10,-1]}'