The setBigUint64() method of DataView instances takes a BigInt and stores it as a 64-bit unsigned 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.
// Create an ArrayBuffer with a size in bytes
const buffer = new ArrayBuffer(16);
// Highest possible BigInt value that fits in an unsigned 64-bit integer
const max = 2n ** 64n - 1n;
const view = new DataView(buffer);
view.setBigUint64(1, max);
console.log(view.getBigUint64(1));
// Expected output: 18446744073709551615nsetBigUint64(byteOffset, value)
setBigUint64(byteOffset, value, littleEndian)byteOffsetThe offset, in bytes, from the start of the view to store the data in.
valueThe value to set as a BigInt. For how the value is encoded in bytes, see Value encoding and normalization.
littleEndian OptionalIndicates whether the data is stored in little- or big-endian format. If false or undefined, a big-endian value is written.
RangeErrorThrown if the byteOffset is set such that it would store beyond the end of the view.
const buffer = new ArrayBuffer(10);
const dataview = new DataView(buffer);
dataview.setBigUint64(0, 3n);
dataview.getBigUint64(1); // 768n