欢迎各位兄弟 发布技术文章
这里的技术是共享的
它是一个字节数组,通常在其他语言中称为“byte array”。 你不能直接操作 要创建的 一个指定大小的 如果 ArrayBuffer 构造函数的 length 属性,其值为 1。 只读属性,表示 返回 ArrayBuffer 的构造函数。 通过 ArrayBuffer 的原型对象可以为所有 ArrayBuffer 对象添加属性。 所有 {{page('zh-CN/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/prototype','属性')}} {{page('zh-CN/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer/prototype','方法')}} 下面的例子创建了一个 8 字节的缓冲区,并使用一个 尝试一下
ArrayBuffer
对象用来表示通用的、固定长度的原始二进制数据缓冲区。ArrayBuffer
的内容,而是要通过类型数组对象或 DataView
对象来操作,它们会将缓冲区中的数据表示为特定的格式,并通过这些格式来读写缓冲区的内容。语法
new ArrayBuffer(length)
参数
length
ArrayBuffer
的大小,单位为字节。返回值
ArrayBuffer
对象,其内容被初始化为 0。异常
length
大于 Number.MAX_SAFE_INTEGER
(>= 2 ** 53)或为负数,则抛出一个 RangeError
异常。描述
ArrayBuffer
构造函数用来创建一个指定字节长度的 ArrayBuffer
对象。以现有数据获取 ArrayBuffer
属性
ArrayBuffer.length
ArrayBuffer
的 byte 的大小,在 ArrayBuffer 构造完成时生成,不可改变。方法
ArrayBuffer 实例
ArrayBuffer
实例都会从 ArrayBuffer.prototype
(en-US) 继承属性和方法。属性
方法
示例
Int32Array
来引用它:var buffer = new ArrayBuffer(8);
var view = new Int32Array(buffer);
规范
Specification Status Comment Typed Array Specification Obsolete 已被 ECMAScript 6 中的 ArrayBuffer 取代 ECMAScript 2015 (6th Edition, ECMA-262)
ArrayBufferStandard 在 ECMA 标准中的初始定义。规定了必须通过 new
来调用构造函数ECMAScript (ECMA-262)
ArrayBufferLiving Standard
Report problems with this compatibility data on GitHub
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | Deno | Node.js | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
constructor | ||||||||||||||
without throws | ||||||||||||||
Full support No support See implementation notes. User must explicitly enable this feature.Legend
从 ECMAScript 2015 开始,兼容性提醒
ArrayBuffer
对象需要用 new
运算符创建。如果调用构造函数时没有使用 new
,将会抛出 TypeError
异常。var dv = ArrayBuffer(10);
// TypeError: calling a builtin ArrayBuffer constructor
// without new is forbidden
var dv = new ArrayBuffer(10);
相关链接
来自 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer