Int32Array() 构造函数

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Int32Array() 构造函数创建 Int32Array 对象。除非明确提供初始化数据,否则内容将初始化为 0

¥The Int32Array() constructor creates Int32Array objects. The contents are initialized to 0 unless initialization data is explicitly provided.

语法

¥Syntax

js
new Int32Array()
new Int32Array(length)
new Int32Array(typedArray)
new Int32Array(object)

new Int32Array(buffer)
new Int32Array(buffer, byteOffset)
new Int32Array(buffer, byteOffset, length)

注意:Int32Array() 只能与 new 一起构建。尝试在没有 new 的情况下调用它会抛出 TypeError

¥Note: Int32Array() can only be constructed with new. Attempting to call it without new throws a TypeError.

参数

¥Parameters

参见 TypedArray

¥See TypedArray.

例外情况

¥Exceptions

参见 TypedArray

¥See TypedArray.

示例

¥Examples

创建 Int32Array 的不同方法

¥Different ways to create an Int32Array

js
// From a length
const int32 = new Int32Array(2);
int32[0] = 42;
console.log(int32[0]); // 42
console.log(int32.length); // 2
console.log(int32.BYTES_PER_ELEMENT); // 4

// From an array
const x = new Int32Array([21, 31]);
console.log(x[1]); // 31

// From another TypedArray
const y = new Int32Array(x);
console.log(y[0]); // 21

// From an ArrayBuffer
const buffer = new ArrayBuffer(32);
const z = new Int32Array(buffer, 4, 4);
console.log(z.byteOffset); // 4

// From an iterable
const iterable = (function* () {
  yield* [1, 2, 3];
})();
const int32FromIterable = new Int32Array(iterable);
console.log(int32FromIterable);
// Int32Array [1, 2, 3]

规范

Specification
ECMAScript Language Specification
# sec-typedarray-constructors

¥Specifications

浏览器兼容性

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

¥Browser compatibility

也可以看看