DataView.prototype.setFloat16()
Baseline Newly available
This feature works across the latest devices and browser versions. This feature might not work in older devices or browser versions. It's been available across browsers since April 2025.
The setFloat16() method of DataView instances takes a number and stores it as a 16-bit floating point number in the 2 bytes starting at the specified byte offset of this DataView. There is no alignment constraint; multi-byte values may be stored at any offset within bounds.
Try it
// 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
Syntax
setFloat16(byteOffset, value) setFloat16(byteOffset, value, littleEndian)
Parameters
-
byteOffset - The offset, in bytes, from the start of the view to store the data in.
-
value - The value to set. For how the value is encoded in bytes, see Value encoding and normalization.
-
littleEndianOptional - Indicates whether the data is stored in little- or big-endian format. If
falseorundefined, a big-endian value is written.
Return value
Exceptions
-
RangeError - Thrown if the
byteOffsetis set such that it would store beyond the end of the view.
Examples
Using setFloat16()
const buffer = new ArrayBuffer(10); const dataview = new DataView(buffer); dataview.setFloat16(0, 3); dataview.getFloat16(1); // 0
Specifications
Browser compatibility
| Desktop | Mobile | Server | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on iOS | Samsung Internet | WebView Android | WebView on iOS | Bun | Deno | Node.js | |
setFloat16 |
135 |
135 |
129 |
120 |
18.2 |
135 |
129 |
89 |
18.2 |
29.0 |
135 |
18.2 |
1.1.23 |
1.43 |
24.0.0 |
See also
- Polyfill of
DataView.prototype.setFloat16incore-js - JavaScript typed arrays guide
DataViewArrayBufferFloat16Array
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/DataView/setFloat16