DataView.prototype.setBigInt64()

Baseline 已广泛支持

此功能已成熟,并可在多种设备和浏览器版本上运行。自 2021 年 9 月起,所有浏览器均已支持此功能。

DataView 实例的 setBigInt64() 方法接收一个 BigInt,并将其作为 64 位有符号整数存储在 `DataView` 中指定字节偏移量开始的 8 个字节内。没有对齐限制;多字节值可以存储在边界内的任何偏移量处。

试一试

// 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

语法

js
setBigInt64(byteOffset, value)
setBigInt64(byteOffset, value, littleEndian)

参数

byteOffset

存储数据的从视图开始处的字节偏移量。

value

要设置为 BigInt 的值。关于值如何编码为字节,请参阅 值编码和归一化

littleEndian 可选

指示数据是存储在 小端 或大端格式中。如果为 falseundefined,则写入大端值。

返回值

undefined.

异常

RangeError

如果 byteOffset 设置为超出视图末尾存储,则会抛出此错误。

示例

使用 setBigInt64()

js
const buffer = new ArrayBuffer(10);
const dataview = new DataView(buffer);
dataview.setBigInt64(0, 3n);
dataview.getBigInt64(1); // 768n

规范

规范
ECMAScript® 2026 语言规范
# sec-dataview.prototype.setbigint64

浏览器兼容性

另见