The `Int32Array` typed array represents an array of twos-complement 32-bit signed integers in the platform byte order. If control over byte order is needed, use `DataView` instead. The contents are initialized to `0`. Once established, you can reference elements in the array using the object's methods, or using standard array index syntax (that is, using bracket notation).

## 语法

    new Int32Array(length);
    new Int32Array(typedArray);
    new Int32Array(object);
    new Int32Array(buffer [, byteOffset [, length]]);

For more information about the constructor syntax and the parameters, see TypedArray.

## 属性

`Int32Array.BYTES_PER_ELEMENT`
  Returns a number value of the element size. `4` in the case of an `Int32Array`.
Int32Array.length
  Static length property whose value is 3. For the actual length (number of elements), see `Int32Array.prototype.length`.
`Int32Array.name`
  Returns the string value of the constructor name. In the case of the `Int32Array` type: "Int32Array".
`Int32Array.prototype`
  Prototype for the TypedArray objects.

## 方法

`Int32Array.from()`
  Creates a new `Int32Array` from an array-like or iterable object. See also `Array.from()`.
`Int32Array.of()`
  Creates a new `Int32Array` with a variable number of arguments. See also `Array.of()`.

## `Int32Array` 属性

All `Int32Array` objects inherit from `%TypedArray%.prototype`.

### 属性

`Int32Array.prototype.constructor`
  Returns the function that created an instance's prototype. This is the `Int32Array` constructor by default.
`Int32Array.prototype.buffer` 只读
  Returns the `ArrayBuffer` referenced by the `Int32Array` Fixed at construction time and thus read only.
`Int32Array.prototype.byteLength` 只读
  Returns the length (in bytes) of the `Int32Array` from the start of its `ArrayBuffer`. Fixed at construction time and thus read only.
`Int32Array.prototype.byteOffset` 只读
  Returns the offset (in bytes) of the `Int32Array` from the start of its `ArrayBuffer`. Fixed at construction time and thus read only.
`Int32Array.prototype.length` 只读
  Returns the number of elements hold in the `Int32Array`. Fixed at construction time and thus read only.

### 方法

`Int32Array.prototype.copyWithin()`
  Copies a sequence of array elements within the array. See also `Array.prototype.copyWithin()`.
`Int32Array.prototype.entries()`
  Returns a new `Array Iterator` object that contains the key/value pairs for each index in the array. See also `Array.prototype.entries()`.
`Int32Array.prototype.every()`
  Tests whether all elements in the array pass the test provided by a function. See also `Array.prototype.every()`.
`Int32Array.prototype.fill()`
  Fills all the elements of an array from a start index to an end index with a static value. See also `Array.prototype.fill()`.
`Int32Array.prototype.filter()`
  Creates a new array with all of the elements of this array for which the provided filtering function returns true. See also `Array.prototype.filter()`.
`Int32Array.prototype.find()`
  Returns the found value in the array, if an element in the array satisfies the provided testing function or `undefined` if not found. See also `Array.prototype.find()`.
`Int32Array.prototype.findIndex()`
  Returns the found index in the array, if an element in the array satisfies the provided testing function or -1 if not found. See also `Array.prototype.findIndex()`.
`Int32Array.prototype.forEach()`
  Calls a function for each element in the array. See also `Array.prototype.forEach()`.
`Int32Array.prototype.includes()`
  Determines whether a typed array includes a certain element, returning `true` or `false` as appropriate. See also `Array.prototype.includes()`.
`Int32Array.prototype.indexOf()`
  Returns the first (least) index of an element within the array equal to the specified value, or -1 if none is found. See also `Array.prototype.indexOf()`.
`Int32Array.prototype.join()`
  Joins all elements of an array into a string. See also `Array.prototype.join()`.
`Int32Array.prototype.keys()`
  Returns a new `Array Iterator` that contains the keys for each index in the array. See also `Array.prototype.keys()`.
`Int32Array.prototype.lastIndexOf()`
  Returns the last (greatest) index of an element within the array equal to the specified value, or -1 if none is found. See also `Array.prototype.lastIndexOf()`.
`Int32Array.prototype.map()`
  Creates a new array with the results of calling a provided function on every element in this array. See also `Array.prototype.map()`.
`Int32Array.prototype.move()` 未实现
  Former non-standard version of `Int32Array.prototype.copyWithin()`.
`Int32Array.prototype.reduce()`
  Apply a function against an accumulator and each value of the array (from left-to-right) as to reduce it to a single value. See also `Array.prototype.reduce()`.
`Int32Array.prototype.reduceRight()`
  Apply a function against an accumulator and each value of the array (from right-to-left) as to reduce it to a single value. See also `Array.prototype.reduceRight()`.
`Int32Array.prototype.reverse()`
  Reverses the order of the elements of an array — the first becomes the last, and the last becomes the first. See also `Array.prototype.reverse()`.
`Int32Array.prototype.set()`
  Stores multiple values in the typed array, reading input values from a specified array.
`Int32Array.prototype.slice()`
  Extracts a section of an array and returns a new array. See also `Array.prototype.slice()`.
`Int32Array.prototype.some()`
  Returns true if at least one element in this array satisfies the provided testing function. See also `Array.prototype.some()`.
`Int32Array.prototype.sort()`
  Sorts the elements of an array in place and returns the array. See also `Array.prototype.sort()`.
`Int32Array.prototype.subarray()`
  Returns a new `Int32Array` from the given start and end element index.
`Int32Array.prototype.values()`
  Returns a new `Array Iterator` object that contains the values for each index in the array. See also `Array.prototype.values()`.
`Int32Array.prototype.toLocaleString()`
  Returns a localized string representing the array and its elements. See also `Array.prototype.toLocaleString()`.
`Int32Array.prototype.toString()`
  Returns a string representing the array and its elements. See also `Array.prototype.toString()`.
`Int32Array.prototype[@@iterator]()`
  Returns a new `Array Iterator` object that contains the values for each index in the array.

## 例子

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

## 详细描述

Specification | Status | Comment
--- | --- | ---
Typed Array Specification | Obsolete | Superseded by ECMAScript 6.
ECMAScript 2015 (6th Edition, ECMA-262) TypedArray constructors | Standard | Initial definition in an ECMA standard. Specified that `new` is required.
ECMAScript Latest Draft (ECMA-262) TypedArray constructors | Draft |

## 浏览器兼容性

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

- Desktop
- Mobile

Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari
--- | --- | --- | --- | --- | ---
Basic support | 7.0 | 4.0 (2) | 10 | 11.6 | 5.1
`new` is required | ? | 44 (44) | ? | ? | ?

Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile
--- | --- | --- | --- | --- | --- | ---
Basic support | 4.0 | (Yes) | 4.0 (2) | 10 | 11.6 | 4.2
`new` is required | ? | ? | 44.0 (44) | ? | ? | ?

## 兼容性说明

Starting with ECMAScript 2015 (ES6), `In32Array` constructors require to be constructed with a `new` operator. Calling a `Int32Array` constructor as a function without `new`, will throw a `TypeError` from now on.

    var dv = Int32Array([1, 2, 3]);
    // TypeError: calling a builtin Int32Array constructor
    // without new is forbidden

    var dv = new Int32Array([1, 2, 3]);

## 参见

- JavaScript typed arrays
- `ArrayBuffer`
- `DataView`