6.4 KiB
| layout |
|---|
| default |
Index #
* [new Index(...ranges)](#new_Index_new) * _instance_ * [.valueOf](#Index+valueOf) ⇒Array
* [.clone()](#Index+clone) ⇒ [Index](#Index)
* [.size()](#Index+size) ⇒ Array.<number>
* [.max()](#Index+max) ⇒ Array.<number>
* [.min()](#Index+min) ⇒ Array.<number>
* [.forEach(callback)](#Index+forEach)
* [.dimension(dim)](#Index+dimension) ⇒ Range | null
* [.isScalar()](#Index+isScalar) ⇒ boolean
* [.toArray()](#Index+toArray) ⇒ Array
* [.toString()](#Index+toString) ⇒ String
* [.toJSON()](#Index+toJSON) ⇒ Object
* _static_
* [.fromJSON(json)](#Index.fromJSON) ⇒ [Index](#Index)
new Index(...ranges) #
Create an index. An Index can store ranges and sets for multiple dimensions. Matrix.get, Matrix.set, and math.subset accept an Index as input.Usage: var index = new Index(range1, range2, matrix1, array1, ...);
Where each parameter can be any of: A number An instance of Range An Array with the Set values A Matrix with the Set values
The parameters start, end, and step must be integer numbers.
| Param | Type |
|---|---|
| ...ranges | * |
index.valueOf ⇒ Array #
Get the primitive value of the Index, a two dimensional array.
Equivalent to Index.toArray().
Kind: instance property of Index
Returns: Array - array
index.clone() ⇒ [Index](#Index) #
Create a clone of the index
Kind: instance method of Index
Returns: Index - clone
index.size() ⇒ Array.<number> #
Retrieve the size of the index, the number of elements for each dimension.
Kind: instance method of Index
Returns: Array.<number> - size
index.max() ⇒ Array.<number> #
Get the maximum value for each of the indexes ranges.
Kind: instance method of Index
Returns: Array.<number> - max
index.min() ⇒ Array.<number> #
Get the minimum value for each of the indexes ranges.
Kind: instance method of Index
Returns: Array.<number> - min
index.forEach(callback) #
Loop over each of the ranges of the indexKind: instance method of Index
| Param | Type | Description |
|---|---|---|
| callback | function |
Called for each range with a Range as first argument, the dimension as second, and the index object as third. |
index.dimension(dim) ⇒ Range | null #
Retrieve the dimension for the given index
Kind: instance method of Index
Returns: Range | null - range
| Param | Type | Description |
|---|---|---|
| dim | Number |
Number of the dimension |
index.isScalar() ⇒ boolean #
Test whether this index contains only a single value.
This is the case when the index is created with only scalar values as ranges, not for ranges resolving into a single value.
Kind: instance method of Index
Returns: boolean - isScalar
index.toArray() ⇒ Array #
Expand the Index into an array.
For example new Index([0,3], [2,7]) returns 0,1,2], [2,3,4,5,6
Kind: instance method of Index
Returns: Array - array
index.toString() ⇒ String #
Get the string representation of the index, for example '[2:6]' or '[0:2:10, 4:7, [1,2,3]]'
Kind: instance method of Index
Returns: String - str
index.toJSON() ⇒ Object #
Get a JSON representation of the Index
Kind: instance method of Index
Returns: Object - Returns a JSON object structured as:
{"mathjs": "Index", "ranges": [{"mathjs": "Range", start: 0, end: 10, step:1}, ...]}
Index.fromJSON(json) ⇒ [Index](#Index) #
Instantiate an Index from a JSON object
Kind: static method of Index
| Param | Type | Description |
|---|---|---|
| json | Object |
A JSON object structured as: {"mathjs": "Index", "dimensions": [{"mathjs": "Range", start: 0, end: 10, step:1}, ...]} |