ArrayBuffer
语法
- var abuffer = new ArrayBuffer(length)
- length 要创建的 ArrayBuffer 的大小,单位为字节。
如果 length 大于 Number.MAX_SAFE_INTEGER(>= 2 ** 53)或为负数,则抛出一个 RangeError 异常。
属性
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.slice()
- 和 ArrayBuffer.prototype.slice() 功能相同。
ArrayBuffer实例
所有 ArrayBuffer 实例都会从 ArrayBuffer.prototype 继承属性和方法。
- ArrayBuffer.prototype.constructor
- 指定函数,它创建一个对象的原型。其初始值是标准ArrayBuffer内置构造函数。
- ArrayBuffer.prototype.byteLength--只读
- 数组的字节大小。在数组创建时确定,并且不可变更。只读
- ArrayBuffer.prototype.slice()
- 返回一个新的 ArrayBuffer ,它的内容是这个 ArrayBuffer 的字节副本,从begin(包括),到end(不包括)。如果begin或end是负数,则指的是从数组末尾开始的索引,而不是从头开始。
示例
- 下面的例子创建了一个 8 字节的缓冲区,并使用一个 Int32Array 来引用它:
- var buffer = new ArrayBuffer(8);
- var view = new Int32Array(buffer);