TypedArray.BYTES_PER_ELEMENT

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

TypedArray.BYTES_PER_ELEMENT 静态数据属性表示类型化数组中每个元素的大小(以字节为单位)。

试一试

console.log(Float64Array.BYTES_PER_ELEMENT);
// Expected output: 8

console.log(Int8Array.BYTES_PER_ELEMENT);
// Expected output: 1

一个数值,其值取决于 TypedArray 的类型。

TypedArray.BYTES_PER_ELEMENT 的属性描述符
可写
可枚举
可配置

描述

TypedArray 对象在每个元素中的字节数以及字节的解释方式上有所不同。BYTES_PER_ELEMENT 常量包含给定 TypedArray 中每个元素拥有的字节数。

BYTES_PER_ELEMENT 属性既是实例属性,也是静态属性。它可以在 TypedArray 子类构造函数和这些构造函数的实例上访问。

作为实例属性,BYTES_PER_ELEMENT 定义在构造函数的 prototype 上。

js
console.log(Object.hasOwn(Int8Array.prototype, "BYTES_PER_ELEMENT")); // true

示例

使用 BYTES_PER_ELEMENT

作为静态属性

js
Int8Array.BYTES_PER_ELEMENT; // 1
Uint8Array.BYTES_PER_ELEMENT; // 1
Uint8ClampedArray.BYTES_PER_ELEMENT; // 1
Int16Array.BYTES_PER_ELEMENT; // 2
Uint16Array.BYTES_PER_ELEMENT; // 2
Float16Array.BYTES_PER_ELEMENT; // 2
Int32Array.BYTES_PER_ELEMENT; // 4
Uint32Array.BYTES_PER_ELEMENT; // 4
Float32Array.BYTES_PER_ELEMENT; // 4
Float64Array.BYTES_PER_ELEMENT; // 8
BigInt64Array.BYTES_PER_ELEMENT; // 8
BigUint64Array.BYTES_PER_ELEMENT; // 8

作为实例属性

js
new Int8Array([]).BYTES_PER_ELEMENT; // 1
new Uint8Array([]).BYTES_PER_ELEMENT; // 1
new Uint8ClampedArray([]).BYTES_PER_ELEMENT; // 1
new Int16Array([]).BYTES_PER_ELEMENT; // 2
new Uint16Array([]).BYTES_PER_ELEMENT; // 2
new Float16Array([]).BYTES_PER_ELEMENT; // 2
new Int32Array([]).BYTES_PER_ELEMENT; // 4
new Uint32Array([]).BYTES_PER_ELEMENT; // 4
new Float32Array([]).BYTES_PER_ELEMENT; // 4
new Float64Array([]).BYTES_PER_ELEMENT; // 8
new BigInt64Array([]).BYTES_PER_ELEMENT; // 8
new BigUint64Array([]).BYTES_PER_ELEMENT; // 8

规范

规范
ECMAScript® 2026 语言规范
# sec-typedarray.bytes_per_element

浏览器兼容性

另见