ArrayBuffer
对象用来表示通用的、固定长度的原始二进制数据缓冲区。
它是一个字节数组,通常在其他语言中称为“byte array”。
你不能直接操作 ArrayBuffer
的内容,而是要通过类型数组对象或 DataView
对象来操作,它们会将缓冲区中的数据表示为特定的格式,并通过这些格式来读写缓冲区的内容。
// create an ArrayBuffer with a size in bytes
const buffer = new ArrayBuffer(8);
console.log(buffer.byteLength);
// expected output: 8
语法
启 数组缓存(长)
参数
长(length
)
要创建的 ArrayBuffer
的大小,单位为字节。
返回值
一个指定大小的 ArrayBuffer
对象,其内容被初始化为 0。
异常
如果 length 大于 Number.MAX_SAFE_INTEGER
(>= 2 ** 53)或为负数,则抛出一个 RangeError
异常。
描述
ArrayBuffer
构造函数用来创建一个指定字节长度的 ArrayBuffer
对象。
以现有数据获取 ArrayBuffer
属性
ArrayBuffer.length
ArrayBuffer 构造函数的 length 属性,其值为1。get ArrayBuffer[@@species]
返回 ArrayBuffer 的构造函数。ArrayBuffer.prototype
通过 ArrayBuffer 的原型对象可以为所有 ArrayBuffer 对象添加属性。
方法
缓组.是视图() – ArrayBuffer.isView(arg)
如果参数是 ArrayBuffer 的视图实例则返回 true
,例如 类型数组对象 或 DataView
对象;否则返回 false
。缓组.转() – ArrayBuffer.transfer(oldBuffer [, newByteLength])
返回一个新的 ArrayBuffer 对象,其内容取自 oldBuffer
中的数据,并且根据 newByteLength
的大小对数据进行截取或补 0。
ArrayBuffer 实例
所有 ArrayBuffer
实例都会从 ArrayBuffer.prototype
继承属性和方法。
属性
ArrayBuffer.prototype.constructor
指定函数,它创建一个对象的原型。其初始值是标准ArrayBuffer内置构造函数。ArrayBuffer.prototype.byteLength
只读数组的字节大小。在数组创建时确定,并且不可变更。只读。
方法
抽取() – ArrayBuffer.prototype.slice()
返回一个新的 ArrayBuffer
,它的内容是这个 ArrayBuffer
的字节副本,从begin(包括),到end(不包括)。如果begin或end是负数,则指的是从数组末尾开始的索引,而不是从头开始。ArrayBuffer.slice()
和 ArrayBuffer.prototype.slice()
功能相同。
示例
下面的例子创建了一个 8 字节的缓冲区,并使用一个 Int32Array
来引用它:
定 缓 = 启 缓组(8);
定 视 = 启 整32组(缓);