Float32Array

Объект Float32Array представляет типизированный массив 32-битных чисел с плавающей запятой (соответствует типу float в языке C) с платформо-зависимым порядком байт. Если необходим контроль за порядком байт, то вместо этого объекта используйте 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]);

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