Please note, this is a STATIC archive of website developer.mozilla.org from 03 Nov 2016, cach3.com does not collect or store any user information, there is no "phishing" involved.

ArrayBuffer

这篇翻译不完整。请帮忙从英语翻译这篇文章

概述

ArrayBuffer (缓冲数组)是一种用于呈现通用、固定长度的二进制数据的类型。不能直接构造并填充 ArrayBuffer 的内容,而应该先创建一个 ArrayBufferView 对象,该对象用具体的格式来呈现 ArrayBuffer 的内容,你可以使用此对象来读写 ArrayBuffer 的内容。

方法概要

ArrayBuffer ArrayBuffer(unsigned long length);

属性

属性 类型 描述
byteLength unsigned long 此数组的大小(以 bytes 作为单位)当数组被创建时,此属性的值就确定了。只读。

方法

ArrayBuffer()

构造方法接收一个数字参数,作为新数组的长度,返回新创建的 ArrayBuffer 对象。

ArrayBuffer ArrayBuffer(
  unsigned long length
);
参数
length
要创建的数组的大小。
返回值

新创建的 ArrayBuffer 对象,该对象具有 length 的大小,所有位置均被初始化为 0。

slice()

返回一个新的 ArrayBuffer 对象,它的内容是从当前 ArrayBuffer 的 begin 到 end 位置的备份。负数的 begin 或 end 值指示从数组末端计数的索引。  

注意:Internet Explorer 10以及 iOS 6 以下版本中 不支持此方法。

ArrayBuffer slice(
  unsigned long begin
  unsigned long end Optional
);
参数
begin
复制 Byte 开始的索引。
end
复制 Byte 结束的索引。如果未指定,返回的 ArrayBuffer 包含从 begin 到此 ArrayBuffer 结尾的所有字节。

 

返回值

新的 ArrayBuffer 对象。

示例

在下面的示例中,我们创建了一个 32 字节的缓冲数组:

var buf = new ArrayBuffer(32);

从已有的数据中获取缓冲数组

从 Base64 字符串中

请参阅 此段落

从本地文件

请参阅 此段落

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 7 4.0 (2) 10  11.6 5.1
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support 4.0 4.0 (2) 10 11.6 4.2

 

兼容性提醒

从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);

相关链接

文档标签和贡献者

标签: 
 此页面的贡献者: maicss, teoli, Jijie.Chen, ziyunfei
 最后编辑者: maicss,