metadata
title: DataView.prototype.getBigInt64()
short-title: getBigInt64()
slug: Web/JavaScript/Reference/Global_Objects/DataView/getBigInt64
page-type: javascript-instance-method
browser-compat: javascript.builtins.DataView.getBigInt64
sidebar: jsref
The getBigInt64() method of {{jsxref("DataView")}} instances reads 8 bytes starting at the specified byte offset of this DataView and interprets them as a 64-bit signed integer. There is no alignment constraint; multi-byte values may be fetched from any offset within bounds.
{{InteractiveExample("JavaScript Demo: DataView.prototype.getBigInt64()")}}
// 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
getBigInt64(byteOffset)
getBigInt64(byteOffset, littleEndian)
Parameters
byteOffset- : The offset, in bytes, from the start of the view to read the data from.
littleEndian{{optional_inline}}- : Indicates whether the data is stored in little- or big-endian format. If
falseorundefined, a big-endian value is read.
- : Indicates whether the data is stored in little- or big-endian format. If
Return value
A {{jsxref("BigInt")}} from -263 to 263-1, inclusive.
Exceptions
- {{jsxref("RangeError")}}
- : Thrown if the
byteOffsetis set such that it would read beyond the end of the view.
- : Thrown if the
Examples
Using getBigInt64()
const { buffer } = new Uint8Array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]);
const dataview = new DataView(buffer);
console.log(dataview.getBigInt64(1)); // 72623859790382856n
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
- JavaScript typed arrays guide
- {{jsxref("DataView")}}
- {{jsxref("ArrayBuffer")}}
- {{jsxref("BigInt64Array")}}