TypedArray.prototype.slice()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
slice()
方法将一个类型化数组的一部分浅拷贝到一个新的类型化数组对象中并返回。此方法采用与 Array.prototype.slice()
相同的算法。TypedArray 指类型化数组的类型中的一员。
尝试一下
语法
js
slice()
slice(start)
slice(start, end)
参数
begin
可选-
从 0 开始的索引位置。可以使用负值索引,表示从数组末尾往前的偏移量。
slice(-2)
表示提取数组中的末尾两个元素。如果没有设定起始位置,则将从开始位置开始截取。 end
可选-
从 0 开始到尾元素前的索引值。
slice
取出的元素到此位置之前,不包含该位置。例,slice(1,4)
表示读取第 2 个元素到第 4 个元素 (元素索引:1, 2, 3)。可以使用负值索引,表示从数组末尾往前的偏移量。slice(2,-1)
表示取出数组中的第 3 个到倒数第 2 个元素。如果没有设定结束位置,则将从开始位置截取到序列尾部。(默认值为typedarray.length
).
返回值
包含取出元素的新 typed array。
描述
slice
方法并不会改变原数组的内容,它只是返回从原数组中取出的元素的浅复制集合。
如果一个新元素被添加到它们任何一个数组中去,另外一个数组不会受到影响。
示例
返回已存在类型数组的一部分片段
js
const uint8 = new Uint8Array([1, 2, 3]);
uint8.slice(1); // Uint8Array [ 2, 3 ]
uint8.slice(2); // Uint8Array [ 3 ]
uint8.slice(-2); // Uint8Array [ 2, 3 ]
uint8.slice(0, 1); // Uint8Array [ 1 ]
规范
Specification |
---|
ECMAScript Language Specification # sec-%typedarray%.prototype.slice |
浏览器兼容性
BCD tables only load in the browser