索引 #

new Index(...ranges) #

创建一个索引。Index 可以存储多维度的范围和集合。Matrix.get、Matrix.set 和 math.subset 接受 Index 作为输入。

用法

const index = new Index(range1, range2, matrix1, array1, ...)

每个参数可以是以下之一

参数 start、end 和 step 必须是整数。

参数 Type
…ranges \*

index.valueOf ⇒ Array #

获取 Index 的原始值,一个二维数组。等同于 Index.toArray()。

种类: [Index](#Index) 的实例属性
返回: Array - 数组

index.clone() ⇒ [Index](#Index) #

创建索引的克隆

种类: [Index](#Index) 的实例方法
返回: [Index](#Index) - 克隆

index.size() ⇒ Array.<number> #

检索索引的大小,即每个维度的元素数量。

种类: [Index](#Index) 的实例方法
返回: Array.<number> - 大小

index.max() ⇒ Array.<number> #

获取索引范围的每个最大值。

种类: [Index](#Index) 的实例方法
返回: Array.<number> - 最大值

index.min() ⇒ Array.<number> #

获取索引范围的每个最小值。

种类: [Index](#Index) 的实例方法
返回: Array.<number> - 最小值

index.forEach(callback) #

遍历索引的每个范围

种类: [Index](#Index) 的实例方法

参数 Type Description
回调函数 function 对每个范围调用,第一个参数是 Range,第二个参数是维度,第三个参数是索引对象。

index.dimension(dim) ⇒ Range | null #

检索给定索引的维度

种类: [Index](#Index) 的实例方法
返回: Range | null - 范围

参数 Type Description
dim Number 维度的编号

index.isScalar() ⇒ boolean #

测试此索引是否只包含单个值。

当索引仅用标量值作为范围创建时,就是这种情况,而不是解析为单个值的范围。

种类: [Index](#Index) 的实例方法
返回: boolean - isScalar

index.toArray() ⇒ Array #

将 Index 展开为数组。例如,new Index([0,3], [2,7]) 返回 [[0,1,2], [2,3,4,5,6]]

种类: [Index](#Index) 的实例方法
返回: Array - 数组

index.toString() ⇒ String #

获取索引的字符串表示形式,例如“[2:6]”或“[0:2:10, 4:7, [1,2,3]]”

种类: [Index](#Index) 的实例方法
返回: String - str

index.toJSON() ⇒ Object #

获取 Index 的 JSON 表示形式

种类: [Index](#Index) 的实例方法
返回: Object - 返回一个结构化的 JSON 对象:{"mathjs": "Index", "ranges": [{"mathjs": "Range", start: 0, end: 10, step:1}, ...]}

Index.fromJSON(json) ⇒ [Index](#Index) #

从 JSON 对象实例化一个 Index

种类: [Index](#Index) 的静态方法

参数 Type Description
json Object 一个结构化的 JSON 对象:{"mathjs": "Index", "dimensions": [{"mathjs": "Range", start: 0, end: 10, step:1}, ...]}
Fork me on GitHub