SharedArrayBuffer.prototype.slice()

SharedArray Buffer.prototype.slice() 方法返回一个新的 SharedArrayBuffer ,其内容是此 SharedArrayBuffer 从开始到结束的字节的副本,包括首尾,排他。如果 begin 或 end 为负值,则它引用数组末尾的索引,而不是开头的索引。此方法与 Array.prototype.slice() 具有相同的算法。

语法

slice()
slice(begin)
slice(begin, end)

Parameters

begin Optional

Zero-based index at which to begin extraction.

A negative index can be used, indicating an offset from the end of the sequence. slice(-2) extracts the last two elements in the sequence.

If begin is undefined, slice begins from index 0 .

end Optional

Zero-based index before which to end extraction. slice extracts up to but not including end .

For example, slice(1,4) extracts the second element through the fourth element(elements indexed 1, 2, and 3).

A negative index can be used, indicating an offset from the end of the sequence. slice(2,-1) extracts the third element through the second-to-last element in the sequence.

If end is omitted, slice extracts through the end of the sequence( sab.byteLength ).

Return value

A new SharedArrayBuffer containing the extracted elements.

实例

const sab = new SharedArrayBuffer(1024);
sab.slice(); // SharedArrayBuffer { byteLength: 1024 }
sab.slice(2); // SharedArrayBuffer { byteLength: 1022 }
sab.slice(-2); // SharedArrayBuffer { byteLength: 2 }
sab.slice(0, 1); // SharedArrayBuffer { byteLength: 1 }