DataView.prototype.setBigInt64()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
The setBigInt64()
method of DataView
instances takes a BigInt and stores it as a 64-bit signed integer in the 8 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);
// Highest possible BigInt value that fits in a signed 64-bit integer
const max = 2n ** (64n - 1n) - 1n;
const view = new DataView(buffer);
view.setBigInt64(1, max);
console.log(view.getBigInt64(1));
// Expected output: 9223372036854775807n
Syntax
setBigInt64(byteOffset, value)
setBigInt64(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 as a
BigInt
. 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 setBigInt64()
const buffer = new ArrayBuffer(10);
const dataview = new DataView(buffer);
dataview.setBigInt64(0, 3n);
dataview.getBigInt64(1); // 768n
Specifications
Specification |
---|
ECMAScript® 2025 Language Specification # sec-dataview.prototype.setbigint64 |
Browser compatibility
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
setBigInt64 |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support