title: BigInt64Array
slug: Web/JavaScript/Reference/Global_Objects/BigInt64Array
page-type: javascript-class
browser-compat: javascript.builtins.BigInt64Array
sidebar: jsref
The BigInt64Array typed array represents an array of 64-bit signed integers in the platform byte order. If control over byte order is needed, use {{jsxref("DataView")}} instead. The contents are initialized to 0n unless initialization data is explicitly provided. Once established, you can reference elements in the array using the object's methods, or using standard array index syntax (that is, using bracket notation).
BigInt64Array is a subclass of the hidden {{jsxref("TypedArray")}} class.
{{InteractiveExample("JavaScript Demo: BigInt64Array", "taller")}}
const buffer = new ArrayBuffer(24);
const bigint64 = new BigInt64Array(buffer);
bigint64[0] = 5886014448488689n;
bigint64[1] = 1881938909131133n;
bigint64[2] = 1898875537769492n;
bigint64[0] = 6118793953620967n;
console.log(bigint64);
// Expected Output: BigInt64Array [6118793953620967n, 1881938909131133n, 1898875537769492n]
console.log(bigint64[2]);
// Expected Output: 1898875537769492n
console.log("Array length:", bigint64.length);
// Expected Output: Array length: 3
console.log("Array byte length:", bigint64.byteLength);
// Expected Output: Array byte length: 24
console.log("Array byte offset:", bigint64.byteOffset);
// Expected Output: Array byte offset: 0
bigint64.set([100n, 200n], 1);
console.log(bigint64);
// Expected Output: BigInt64Array [6118793953620967n, 100n, 200n]
Constructor
- {{jsxref("BigInt64Array/BigInt64Array", "BigInt64Array()")}}
- : Creates a new
BigInt64Arrayobject.
- : Creates a new
Static properties
Also inherits static properties from its parent {{jsxref("TypedArray")}}.
- {{jsxref("TypedArray/BYTES_PER_ELEMENT", "BigInt64Array.BYTES_PER_ELEMENT")}}
- : Returns a number value of the element size.
8in the case ofBigInt64Array.
- : Returns a number value of the element size.
Static methods
Inherits static methods from its parent {{jsxref("TypedArray")}}.
Instance properties
Also inherits instance properties from its parent {{jsxref("TypedArray")}}.
These properties are defined on BigInt64Array.prototype and shared by all BigInt64Array instances.
- {{jsxref("TypedArray/BYTES_PER_ELEMENT", "BigInt64Array.prototype.BYTES_PER_ELEMENT")}}
- : Returns a number value of the element size.
8in the case of aBigInt64Array.
- : Returns a number value of the element size.
- {{jsxref("Object/constructor", "BigInt64Array.prototype.constructor")}}
- : The constructor function that created the instance object. For
BigInt64Arrayinstances, the initial value is the {{jsxref("BigInt64Array/BigInt64Array", "BigInt64Array")}} constructor.
- : The constructor function that created the instance object. For
Instance methods
Inherits instance methods from its parent {{jsxref("TypedArray")}}.
Examples
Different ways to create a BigInt64Array
// From a length
const bigint64 = new BigInt64Array(2);
bigint64[0] = 42n;
console.log(bigint64[0]); // 42n
console.log(bigint64.length); // 2
console.log(bigint64.BYTES_PER_ELEMENT); // 8
// From an array
const x = new BigInt64Array([21n, 31n]);
console.log(x[1]); // 31n
// From another TypedArray
const y = new BigInt64Array(x);
console.log(y[0]); // 21n
// From an ArrayBuffer
const buffer = new ArrayBuffer(64);
const z = new BigInt64Array(buffer, 8, 4);
console.log(z.byteOffset); // 8
// From an iterable
const iterable = (function* () {
yield* [1n, 2n, 3n];
})();
const bigint64FromIterable = new BigInt64Array(iterable);
console.log(bigint64FromIterable);
// BigInt64Array [1n, 2n, 3n]
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
- JavaScript typed arrays guide
- {{jsxref("TypedArray")}}
- {{jsxref("ArrayBuffer")}}
- {{jsxref("DataView")}}