metadata
title: DataView.prototype.setFloat16()
short-title: setFloat16()
slug: Web/JavaScript/Reference/Global_Objects/DataView/setFloat16
page-type: javascript-instance-method
browser-compat: javascript.builtins.DataView.setFloat16
sidebar: jsref
The setFloat16() method of {{jsxref("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.
{{InteractiveExample("JavaScript Demo: DataView.prototype.setFloat16()")}}
// 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.
littleEndian{{optional_inline}}- : Indicates whether the data is stored in little- or big-endian format. If
falseorundefined, a big-endian value is written.
- : Indicates whether the data is stored in little- or big-endian format. If
Return value
{{jsxref("undefined")}}.
Exceptions
- {{jsxref("RangeError")}}
- : Thrown if the
byteOffsetis set such that it would store beyond the end of the view.
- : Thrown if the
Examples
Using setFloat16()
const buffer = new ArrayBuffer(10);
const dataview = new DataView(buffer);
dataview.setFloat16(0, 3);
dataview.getFloat16(1); // 0
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
- Polyfill of
DataView.prototype.setFloat16incore-js - JavaScript typed arrays guide
- {{jsxref("DataView")}}
- {{jsxref("ArrayBuffer")}}
- {{jsxref("Float16Array")}}