Int32Array
Int32Array
Int32Array 类型数组表示在平台字节顺序中的一对双补码32位有符号整数数组。如果需要控制字节顺序, 请改用 DataView。内容初始化为0。一旦建立, 您可以使用对象的方法引用数组中的元素, 或者使用标准数组索引语法 (即使用括号表示法)。
语法
new Int32Array( // new in ES2017
new Int32Array(length
new Int32Array(typedArray
new Int32Array(object
new Int32Array(buffer [, byteOffset [, length]]
有关构造函数语法和参数的更多信息, 请参见 TypedArray。
属性
Int32Array. BYTES_PER_ELEMENTReturns 元素大小的数值。在 Int32Array.Int32Array.lengthStatic 长度属性的情况下, 其值为0。对于实际长度 (元素数), 请参见 Int32Array.prototype.length.Int32Array.nameReturns 构造函数名称的字符串值。在 Int32Array 类型的情况下: "Int32Array"。Int32Array prototypePrototype 的 TypedArray 对象。
方法
Int32Array.from()
创建一个新的 Int32Array 从类似数组或 iterable 对象。另请参见Array.from()
。
Int32Array prototype
所有 Int32Array 对象都从%TypedArray% 原型继承。
属性
Int32Array.prototype.constructorReturns
创建实例原型的函数。这是默认情况下的 Int32Array 构造函数。
方法
Int32Array.prototype.copyWithin()
复制数组中的一系列数组元素。另见Array.prototype.copyWithin()
。
示例
多种方式生成 Int32Array
:
// From a length
var 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
var arr = new Int32Array([21,31]
console.log(arr[1] // 31
// From another TypedArray
var x = new Int32Array([21, 31]
var y = new Int32Array(x
console.log(y[0] // 21
// From an ArrayBuffer
var buffer = new ArrayBuffer(16
var z = new Int32Array(buffer, 0, 4
// From an iterable
var iterable = function*(){ yield* [1,2,3]; }(
var int32 = new Int32Array(iterable
// Int32Array[1, 2, 3]
规范
Specification | Status | Comment |
---|---|---|
Typed Array Specification | Obsolete | Superseded by ECMAScript 2015. |
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'TypedArray constructors' in that specification. | Standard | Initial definition in an ECMA standard. Specified that new is required. |
ECMAScript Latest Draft (ECMA-262)The definition of 'TypedArray constructors' in that specification. | Draft | ECMAScript 2017 changed the Int32Array constructor to use the ToIndex operation and allows constructors with no arguments. |
浏览器兼容性
Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
Basic support | 7.0 | (Yes) | 4.0 (2) | 10 | 11.6 | 5.1 |
new is required | ? | ? | 44 (44) | ? | ? | ? |
Iterable in constructor | ? | ? | 52 (52) | ? | ? | ? |
Constructor without arguments | ? | ? | 55 (55) | ? | ? | ? |
Feature | Android | Chrome for Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic support | 4.0 | (Yes) | (Yes) | 4.0 (2) | 10 | 11.6 | 4.2 |
new is required | ? | ? | ? | 44.0 (44) | ? | ? | ? |
Iterable in constructor | ? | ? | ? | 52.0 (52) | ? | ? | ? |
Constructor without arguments | ? | ? | ? | 55.0 (55) | ? | ? | ? |