📜  JavaScript TypedArray subarray()方法(1)

📅  最后修改于: 2023-12-03 15:16:07.306000             🧑  作者: Mango

JavaScript TypedArray subarray()方法

JavaScript中的TypedArray是用于处理数值数组的一种数据类型,包括Int8Array、Uint8Array、Uint8ClampedArray、Int16Array、Uint16Array、Int32Array、Uint32Array、Float32Array、Float64Array等。

TypedArray的subarray()方法可以用于创建原始数组的一个新视图,并返回该新视图的TypedArray对象。新视图将指定原始数组的一部分作为其元素。subarray()方法不影响原始数组,只是创建了对原始数组的一个新视图。

语法

subarray()方法的语法如下:

typedarray.subarray(begin, end);

参数列表:

  • begin:可选参数,开始索引,视图将从原始数组的该索引处开始
  • end:可选参数,结束索引,视图将在原始数组的该索引处结束。该索引处的元素不包括在视图中。如果未指定该参数,视图将包含从开始索引到原始数组的最后一个元素。

如果begin和end参数指定负数,则它们表示从数组末尾的偏移量。例如,-2表示从数组的倒数第二个元素开始。

返回值

subarray()方法返回一个新的TypedArray对象,该对象包含原始数组的子数组。新视图与原始数组共享内存空间,反映原始数组中相应元素值的更改。

代码示例

下面是一个使用subarray()方法创建新视图的示例:

const originalArray = new Uint8Array([10, 20, 30, 40, 50]);

// 创建原始数组的一个新视图
const newArray = originalArray.subarray(1, 4); 

console.log(originalArray); // 输出:Uint8Array [10, 20, 30, 40, 50]
console.log(newArray); // 输出:Uint8Array [20, 30, 40]

在上述示例中,我们在originalArray上调用了subarray()方法,并指定了开始索引为1和结束索引为4。这意味着我们要创建一个新视图,该视图的元素为原始数组的第二个、第三个和第四个元素(不包括第五个元素)。

我们将新的子数组存储在名为newArray的变量中,并将其打印到控制台中。可以看到,新的子数组确实只包含原始数组的第二个、第三个和第四个元素。