DataView 实例的 setFloat16() 接受一个数字,并将其以 16 位浮点数的形式存储在从当前 DataView 的指定偏移位置开始处的 2 字节中。如果没有对齐约束;则可以在边界内的任意偏移位置处存储多字节值。
{{InteractiveExample("JavaScript Demo: DataView.setFloat16()")}}
```js interactive-example // Create an ArrayBuffer with a size in bytes const buffer = new ArrayBuffer(16);
const view = new DataView(buffer); view.setFloat16(1, Math.PI);
console.log(view.getFloat16(1)); // Expected output: 3.140625
## 语法
```js-nolint
setFloat16(byteOffset, value)
setFloat16(byteOffset, value, littleEndian)
参数
byteOffset- : 从视图的开始位置到存储数据的位置的偏移量,以字节为单位。
value- : 要设置的值。有关数据如何编码为字节序的详细信息,请参见值编码与标准化。
littleEndian{{optional_inline}}- : 指示数据是否以小端或大端序格式存储。如果为
false或undefined,则以大端序写入数值。
- : 指示数据是否以小端或大端序格式存储。如果为
返回值
undefined。
异常
RangeError- : 如果设置的
byteOffset会导致存储到视图的末尾之外,则抛出此异常。
- : 如果设置的
示例
使用 setFloat16()
const buffer = new ArrayBuffer(10);
const dataview = new DataView(buffer);
dataview.setFloat16(0, 3);
dataview.getFloat16(1); // 0