此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Float32Array() 构造函数

基线 广泛可用

自 2015年7月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

Float32Array() 构造函数用于创建 Float32Array 对象。除非显式提供初始化数据,否则其内容会被初始化为 0

语法

js
new Float32Array()
new Float32Array(length)
new Float32Array(typedArray)
new Float32Array(object)

new Float32Array(buffer)
new Float32Array(buffer, byteOffset)
new Float32Array(buffer, byteOffset, length)

备注:Float32Array() 只能通过 new 进行构造。如果尝试在没有使用 new 的情况下调用它,会抛出 TypeError 异常。

参数

参见 TypedArray

异常

参见 TypedArray

示例

创建 Float32Array 的不同方式

js
// 通过长度创建
const float32 = new Float32Array(2);
float32[0] = 42;
console.log(float32[0]); // 42
console.log(float32.length); // 2
console.log(float32.BYTES_PER_ELEMENT); // 4

// 通过数组创建
const x = new Float32Array([21, 31]);
console.log(x[1]); // 31

// 通过另一个 TypedArray 创建
const y = new Float32Array(x);
console.log(y[0]); // 21

// 通过 ArrayBuffer 创建
const buffer = new ArrayBuffer(32);
const z = new Float32Array(buffer, 4, 4);
console.log(z.byteOffset); // 4

// 通过可迭代对象创建
const iterable = (function* () {
  yield* [1, 2, 3];
})();
const float32FromIterable = new Float32Array(iterable);
console.log(float32FromIterable);
// Float32Array [1, 2, 3]

规范

规范
ECMAScript® 2027 Language Specification
# sec-typedarray-constructors

浏览器兼容性

参见