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 представляет типизированный массив 32-битных целых чисел со знаком с дополнением до двух с платформо-зависимым порядком байт. Если необходим контроль за порядком байт, то вместо этого объекта используйте DataView. Содержимое инициализируется значением 0. Создав экземпляр Int32Array, можно получить доступ к элементам массива, используя методы объекта или стандартный синтаксис доступа к элементу массива по его индексу (с помощью скобочной нотации).

Синтаксис

new Int32Array(); // добавлено в ES2017
new Int32Array(length);
new Int32Array(typedArray);
new Int32Array(object);
new Int32Array(buffer [, byteOffset [, length]]);

Для получения дополнительной информации о синтаксисе конструктора и параметрах TypedArray.

Свойства

Int32Array.BYTES_PER_ELEMENT

Возвращает числовое значение размера элемента. 4 в случае с Int32Array.

Int32Array.length

Свойство статического размера, значение которого равно 3. Для актуального размера (количества элементов), смотрите Int32Array.prototype.length.

Int32Array.name

Возвращает строковое значение названия конструктора. В случае с типом Int32Array: "Int32Array".

Int32Array.prototype

Прототип для TypedArray объектов.

Методы

Int32Array.from()

Создаёт новый Int32Array из массивоподобного или итеративного объекта. Смотрите также Array.from().

Int32Array.of()

Создаёт новый 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.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.

Примеры

Разные способы создания Int32Array:

js
// С указанием размера
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

// Из массива (Array)
var arr = new Int32Array([21, 31]);
console.log(arr[1]); // 31

// Из другого типизированного массива (TypedArray)
var x = new Int32Array([21, 31]);
var y = new Int32Array(x);
console.log(y[0]); // 21

// Из ArrayBuffer
var buffer = new ArrayBuffer(16);
var z = new Int32Array(buffer, 0, 4);

// Из итерируемого объекта (iterable)
var iterable = (function* () {
  yield* [1, 2, 3];
})();
var int32 = new Int32Array(iterable);
// Int32Array[1, 2, 3]

Спецификации

Specification
ECMAScript Language Specification
# table-49

Совместимость с браузерами

BCD tables only load in the browser

Compatibility notes

Начиная с ECMAScript 2015, конструкторы Int32Array требуют оператор new. Вызов Int32Array конструктора как функцию без оператора new, вызовет ошибку TypeError.

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

Смотрите также