JavaScript | ArrayBuffer对象

ArrayBuffer 对象用于表示通用的固定长度原始二进制数据缓冲区。ArrayBuffer的内容不能直接操作,只能通过DataView对象或其中一个类型化数组对象进行访问。这些对象用于读取和写入缓冲区的内容。一个ArrayBuffer中可以添加多个DataView或类型化数组对象,其他对象视图可以很容易地看到对一个对象的任何更改。 以下是类型化数组: float32阵列、float64阵列、int8阵列、int16阵列、int32阵列、uint8阵列、uint8clampedaray、uint16阵列、uint32阵列。 语法:

null
new ArrayBuffer(byteLength)

参数: 它接受一个参数,即。 拜特伦斯 它表示要创建的数组缓冲区的大小(以字节为单位)。 返回值: 它返回指定大小的新ArrayBuffer对象,内容初始化为0。

显示ArrayBuffer对象工作的JavaScript代码:

<script>
//Create a 16byte buffer
var buffer = new ArrayBuffer(16);
//Create a DataView referring to the buffer
var view1 = new DataView(buffer);
//Create a Int8Array view referring to the buffer
var view2 = new Int8Array(buffer);
//Put value of 32bits
view1.setInt32(0, 0x76543210);
//prints the 32bit value
document.write(view1.getInt32(0).toString(16) + "<br>" );
//prints only 8bit value
document.write(view1.getInt8(0).toString(16) + "<br>" );
document.write(view2[0].toString(16));
</script>


输出:

76543210
76
76

属性:

  • ArrayBuffer。ByTeleLength:ByTeleLength属性以字节为单位返回缓冲区的长度。
  • ArrayBuffer。prototype:该属性允许向所有ArrayBuffer对象添加属性。

方法:

  • ArrayBuffer。isView(arg):如果arg是ArrayBuffer视图(类型化数组对象或数据视图)之一,则返回true,否则返回false。
  • ArrayBuffer。传输(oldBuffer[,newByteLength]):指定的oldBuffer中的内容被截断或零扩展指定的newByteLength,并作为新的ArrayBuffer返回。

实例方法:

  • ArrayBuffer。slice()和ArrayBuffer。原型slice():返回一个新的ArrayBuffer,其内容是该ArrayBuffer的字节的副本,从开始、包含、到结束、独占。
© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享