DataView.prototype.setUint16()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Please help us by answering a few questions.
The setUint16()
method of DataView
instances takes a number and stores it as a 16-bit unsigned integer 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.setUint16(1, 65535); // Max unsigned 16-bit integer
console.log(view.getUint16(1));
// Expected output: 65535
Syntax
setUint16(byteOffset, value)
setUint16(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-
Indicates whether the data is stored in little- or big-endian format. If
false
orundefined
, a big-endian value is written.
Return value
Exceptions
RangeError
-
Thrown if the
byteOffset
is set such that it would store beyond the end of the view.
Examples
Using setUint16()
const buffer = new ArrayBuffer(10);
const dataview = new DataView(buffer);
dataview.setUint16(0, 3);
dataview.getUint16(1); // 768
Specifications
Specification |
---|
ECMAScript® 2025 Language Specification # sec-dataview.prototype.setuint16 |
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
setUint16 |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support