JavaScript - DataView
DataView是 JavaScript 中的一个对象,允许您处理存储在 ArrayBuffer 中的二进制数据。它提供了一个低级接口,用于在二进制 ArrayBuffer 中读写数字类型。
DataView 对象提供了内置方法,用于从缓冲区中读写 1、2 和 4 字节的有符号和无符号整数,以及 4 和 8 字节的浮点数。
ArrayBuffer 是一个字节数组,在其他语言中通常称为"字节数组"。您不能像操作常规数组那样直接操作 ArrayBuffer 中的数据。使用 ArrayBuffer,您可以创建 DataView 对象,该对象以特定格式表示缓冲区。您可以使用 DataView 对象读取和写入缓冲区的内容。
语法
以下是在 JavaScript 中创建 DataView 对象的语法 -
new DataView(buffer, byteOffset, byteLength)
其中,buffer 是一个用于存储数据的现有 ArrayBuffer。byteOffset 参数(可选)表示缓冲区中第一个字节的偏移量(以字节为单位),byteLength 参数(同样可选)表示字节数组中元素的数量。
示例:创建 DataView 对象
以下示例演示了如何在 JavaScript 中创建 DataView 对象。
<html>
<body>
<script>
const buffer = new ArrayBuffer(16);
//创建数据视图对象
const data_view = new DataView(buffer);
document.write("The type of data_view is: " + typeof(data_view));
</script>
</body>
</html>
输出
上述程序显示 data_view 的类型为 -
data_view 的类型为:object
JavaScript DataView 属性
以下是 DataView 对象的属性列表 -
- buffer - 返回 ArrayBuffer 或 SharedArrayBuffer。
- byteLength - 返回此视图的长度(以字节为单位)。
- byteOffset - 返回此视图相对于其 ArrayBuffer 或 SharedArrayBuffer 起始位置的偏移量(以字节为单位)。
JavaScript DataView 方法
以下是 JavaScript DataView 对象的方法 -
| 序号 | 方法和说明 |
|---|---|
| 1 |
返回一个 BigInt,取值范围为 -263 到 263-1(含)。 |
| 2 |
返回一个 BigInt,取值范围为 0 到 264-1(含)。 |
| 3 |
返回一个浮点数,取值范围为 -3.4e38 到3.4e38. |
| 4 |
返回任意数值。 |
| 5 |
返回 -32768 到 32767(含)之间的整数。 |
| 6 |
返回范围从 -2147483648 到 2147483647(含)。 |
| 7 |
返回 -128 到 127(含)之间的整数。 |
| 8 |
返回 0 到 65535(含)之间的整数。 |
| 9 |
返回 0 到 4294967295 范围内(含)的整数。 |
| 10 |
返回 0 到 255 范围内(含)的整数。 |
| 11 |
返回 undefined 未定义。 |
| 12 |
返回 undefined 未定义。 |
| 13 |
返回 undefined 未定义。 |
| 14 |
返回 undefined 未定义。 |
| 15 |
返回 undefined 未定义。 |
| 16 |
返回 undefined 未定义。 |
| 17 |
返回 undefined 未定义。 |
| 18 |
返回 undefined 未定义。 |
| 19 |
返回 undefined 未定义。 |
| 20 |
返回 undefined 未定义。 |

