--- title: ArrayBuffer.prototype.slice() slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/slice translation_of: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/slice ---
{{JSRef}}

slice()方法返回一个新的 ArrayBuffer ,它的内容是这个ArrayBuffer的字节副本,从begin(包括),到end(不包括)。

{{EmbedInteractiveExample("pages/js/arraybuffer-slice.html")}}

语法

arraybuffer.slice(begin[, end])

参数

begin
从零开始的字节索引,切片从这开始。
end
结束切片的字节索引。如果没指定end,新的 ArrayBuffer 将包含这个 ArrayBuffer 从头到尾的所有字节。由begin和end指定的这个范围夹在当前数组的有效索引范围内。如果新ArrayBuffer的长度在计算后为负,它将强制为0 。

返回值

 一个新的 ArrayBuffer 对象。

描述

slice 方法复制到但不包括由end参数指示的字节。如果begin或end是负数,则指的是从数组末尾开始的索引,而不是从头开始。

示例

复制一个 ArrayBuffer

var buf1 = new ArrayBuffer(8);
var buf2 = buf1.slice(0);

规范

Specification Status Comment
{{SpecName('Typed Array')}} {{Spec2('Typed Array')}} Superseded by EMCAScript 6.
{{SpecName('ES6', '#sec-arraybuffer.prototype.slice', 'ArrayBuffer.prototype.slice')}} {{Spec2('ES6')}} Initial definition in an ECMA standard.
{{SpecName('ESDraft', '#sec-arraybuffer.prototype.slice', 'ArrayBuffer.prototype.slice')}} {{Spec2('ESDraft')}}  

浏览器兼容性

{{Compat("javascript.builtins.ArrayBuffer.slice")}}

相关链接