Float32Array

Объект Float32Array представляет типизированный массив 32-битных чисел с плавающей запятой (соответствует типу float в языке C) с платформо-зависимым порядком байт. Если необходим контроль за порядком байт, то вместо этого объекта используйте [DataView]](/ru/docs/Web/JavaScript/Reference/Global_Objects/DataView) Содержимое инициализируется значением 0. Создав экземпляр Float32Array, можно получить доступ к элементам массива, используя методы объекта или стандартный синтаксис доступа к элементу массива по его индексу (с помощью скобочной нотации - квадратные скобки).

Синтаксис

new Float32Array(); // new in ES2017
new Float32Array(length);
new Float32Array(typedArray);
new Float32Array(object);
new Float32Array(buffer [, byteOffset [, length]]);

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

Свойства

Float32Array.BYTES_PER_ELEMENT

Возвращает число, соответствующее размеру элемента массива в байтах. Для Float32Array это 4.

Float32Array.length

Статическое свойство "длина" со значением 0. Если хотите получить актуальную длину массива (число элементов) используйте Float32Array.prototype.length (en-US).

Float32Array.name (en-US)

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

Float32Array.prototype (en-US)

Прототип объекта TypedArray.

Методы

Float32Array.from() (en-US)

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

Float32Array.of() (en-US)

Создаёт новый Float32Array с заданным числом элементов. Смотрите также Array.of().

Float32Array prototype

``Любые Float32Array объекты наследуются от %TypedArray%.prototype (en-US).

Свойства

Float32Array.prototype.constructor

Возвращает функцию, которая создаёт экземпляр прототипа. В данном случае это конструктор Float32Array.

Float32Array.prototype.buffer (en-US) Только для чтения

Возвращает ArrayBuffer, на который ссылается Float32Array. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.

Float32Array.prototype.byteLength (en-US) Только для чтения

Возвращает длину в байтах для Float32Array с начала его ArrayBuffer. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.

Float32Array.prototype.byteOffset (en-US) Только для чтения

Возвращает смещение (в байтах) Float32Array относительно начала ArrayBuffer. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.

Float32Array.prototype.length (en-US) Только для чтения

Возвращает число элементов, хранящихся в Float32Array. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.

Методы

Float32Array.prototype.copyWithin() (en-US)

Копирует последовательность элементов в массив. Смотрите также Array.prototype.copyWithin().

Float32Array.prototype.entries() (en-US)

Возвращает новый объект Array Iterator, который содержит пары ключ-значение для каждого элемента в массиве. Смотрите также Array.prototype.entries().

Float32Array.prototype.every() (en-US)

Проверяет, что все элементы в массиве соответствуют условию. Смотрите также Array.prototype.every().

Float32Array.prototype.fill() (en-US)

Заполняет весь массив от начального до последнего индекса одинаковыми элементами. Смотрите также Array.prototype.fill().

Float32Array.prototype.filter() (en-US)

Возвращает новый массив со всеми элементами удовлетворяющей условию. Смотрите также Array.prototype.filter().

Float32Array.prototype.find() (en-US)

Возвращает найденное значение в массиве, если найден элемент соответствующий условию, в противном случае возвращает undefined. Смотрите также Array.prototype.find().

Float32Array.prototype.findIndex() (en-US)

Возвращает индекс найденного значения в массиве, если найден элемент соответствующий условию, в противном случае возвращает -1. Смотрите также Array.prototype.findIndex().

Float32Array.prototype.forEach() (en-US)

Вызывает функцию для каждого элемента в массиве. Смотрите также Array.prototype.forEach().

Float32Array.prototype.includes() (en-US) Экспериментальная возможность

Проверяет что массив включает себя элемент, возвращает соответственно true или false. Смотрите также Array.prototype.includes().

Float32Array.prototype.indexOf() (en-US)

Возвращает индекс элемента соответствующего условию (равен значению), в противном случае возвращает -1. Смотрите также Array.prototype.indexOf().

Float32Array.prototype.join()

Объединяет элементы массива в строку. Смотрите также Array.prototype.join().

Float32Array.prototype.keys() (en-US)

Возвращает новый Array Iterator, который содержит ключи элементов в массиве. Смотрите также Array.prototype.keys().

Float32Array.prototype.lastIndexOf() (en-US)

Возвращает последний найденный индекс соответствующий искомому значению, в противном случае возвращает - 1. Смотрите также Array.prototype.lastIndexOf().

Float32Array.prototype.map() (en-US)

Возвращает новый массив с результатом применения функции к каждому элементу в этом массиве. Смотрите также Array.prototype.map().

Float32Array.prototype.move() Non-standard Не реализовано

Нестандартизированная версия Float32Array.prototype.copyWithin() (en-US).

Float32Array.prototype.reduce() (en-US)

Применяет функцию к каждому элементу в массиве (слева-направо) и накапливает результат в переменной. Смотрите также Array.prototype.reduce().

Float32Array.prototype.reduceRight() (en-US)

Применяет функцию к каждому элементу в массиве (справа-налево) и накапливает результат в переменной. Смотрите также Array.prototype.reduceRight().

Float32Array.prototype.reverse() (en-US)

Переставляет элементы массива в обратном порядке - первый становится последним и так далее. Смотрите также Array.prototype.reverse().

Float32Array.prototype.set()

Сохраняет значения в массиве.

Float32Array.prototype.slice() (en-US)

Выделяет часть массива и возвращает новый с этими значениями. Смотрите также Array.prototype.slice().

Float32Array.prototype.some() (en-US)

Возвращает true если хотя бы один элемент удовлетворяет условию. Смотрите также Array.prototype.some().

Float32Array.prototype.sort() (en-US)

Сортирует элементы массива по порядку и возвращает этот массив. Смотрите также Array.prototype.sort().

Float32Array.prototype.subarray() (en-US)

Возваращает новый Float32Array с заданного начального по конечный индекс.

Float32Array.prototype.values() (en-US)

Возвращает новый объект Array Iterator который содержит значения всех элементов в массиве. Смотрите также Array.prototype.values().

Float32Array.prototype.toLocaleString() (en-US)

Возвращает локализированную строку представляющую массив и его элементы. Смотрите также Array.prototype.toLocaleString().

Float32Array.prototype.toString() (en-US)

Возвращает строку представляющую массив и его элементы. Смотрите также Array.prototype.toString().

Float32Array.prototype[@@iterator]() (en-US)

Возвращает новый объект Array Iterator который содержит значения всех элементов в массиве.

Примеры

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

// Используя указание длины
var float32 = new Float32Array(2);
float32[0] = 42;
console.log(float32[0]); // 42
console.log(float32.length); // 2
console.log(float32.BYTES_PER_ELEMENT); // 4

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

// Из другого TypedArray
var x = new Float32Array([21, 31]);
var y = new Float32Array(x);
console.log(y[0]); // 21

// Из другого ArrayBuffer
var buffer = new ArrayBuffer(16);
var z = new Float32Array(buffer, 0, 4);

// Из итератора
var iterable = function*(){ yield* [1,2,3]; }();
var float32 = new Float32Array(iterable);
// Float32Array[1, 2, 3]

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

Specification
ECMAScript Language Specification
# table-49

Браузерная совместимость

BCD tables only load in the browser

Примечания по совместимости

Начиная с ECMAScript 2015 (ES6), Float32Array конструктор обязательно должен вызываться с ключевым словом new. Вызов Float32Array конструктора как функцию приведёт к исключению TypeError.

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

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