Объект 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
. Float32Array.name
- Возвращает строковое представление названия конструктора. В данном случае
Float32Array
вернёт"Float32Array"
. Float32Array.prototype
- Прототип объекта
TypedArray
.
Методы
Float32Array.from()
- Создаёт новый
Float32Array
из массивоподобного или итерируемого объекта. Смотрите такжеArray.from()
. Float32Array.of()
- Создаёт новый
Float32Array
с заданным числом элементов. Смотрите такжеArray.of()
.
Float32Array
prototype
Любые Float32Array
объекты наследуются от %TypedArray%.prototype
.
Свойства
Float32Array.prototype.constructor
- Возвращает функцию, которая создаёт экземпляр прототипа. В данном случае это конструктор
Float32Array
. Float32Array.prototype.buffer
Только для чтения- Возвращает
ArrayBuffer
, на который ссылаетсяFloat32Array.
Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения. Float32Array.prototype.byteLength
Только для чтения- Возвращает длину в байтах для
Float32Array
с начала егоArrayBuffer
. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения. Float32Array.prototype.byteOffset
Только для чтения- Возвращает смещение (в байтах)
Float32Array
относительно началаArrayBuffer
. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения. Float32Array.prototype.length
Только для чтения- Возвращает число элементов, хранящихся в
Float32Array
. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.
Методы
Float32Array.prototype.copyWithin()
- Копирует последовательность элементов в массив. Смотрите также
Array.prototype.copyWithin()
. Float32Array.prototype.entries()
- Возвращает новый объект
Array Iterator
, который содержит пары ключ-значение для каждого элемента в массиве. Смотрите такжеArray.prototype.entries()
. Float32Array.prototype.every()
- Проверяет, что все элементы в массиве соответствуют условию. Смотрите также
Array.prototype.every()
. Float32Array.prototype.fill()
- Заполняет весь массив от начального до последнего индекса одинаковыми элементами. Смотрите также
Array.prototype.fill()
. Float32Array.prototype.filter()
- Возвращает новый массив со всеми элементами удовлетворяющеми условию. Смотрите также
Array.prototype.filter()
. Float32Array.prototype.find()
- Возвращает найденное значение в массиве, если найден элемент соответствуший условию, в противном случае возвращает
undefined
. Смотрите такжеArray.prototype.find()
. Float32Array.prototype.findIndex()
- Возвращает индекс найденного значения в массиве, если найден элемент соответствуеший условию, в противном случае возвращает -1. Смотрите также
Array.prototype.findIndex()
. Float32Array.prototype.forEach()
- Вызывает функцию для каждого элемента в массиве. Смотрите также
Array.prototype.forEach()
. Float32Array.prototype.includes()
- Проверяет что массив включает себя элемент, возвращает соответственно true или false. Смотрите также
Array.prototype.includes()
. Float32Array.prototype.indexOf()
- Возвращает индекс элемента соответствующего условию (равен значению), в противном случае возвращает -1. Смотрите также
Array.prototype.indexOf()
. Float32Array.prototype.join()
- Объединяет элементы массива в строку. Смотрите также
Array.prototype.join()
. Float32Array.prototype.keys()
- Возвращает новый
Array Iterator,
который содержит ключи элементов в массиве. Смотрите такжеArray.prototype.keys()
. Float32Array.prototype.lastIndexOf()
- Возвращает последний найденный индекс соответствующий искомому значению, в противном случае возвращает - 1. Смотрите также
Array.prototype.lastIndexOf()
. Float32Array.prototype.map()
- Возвращает новый массив с результатом применения функции к каждому элементу в этом массиве. Смотрите также
Array.prototype.map()
. Float32Array.prototype.move()
Не реализовано- Нестандаризированная версия
Float32Array.prototype.copyWithin()
. Float32Array.prototype.reduce()
- Применяет функцию к каждому элементу в массиве (слева-направо) и накапливает результат в переменной. Смотрите также
Array.prototype.reduce()
. Float32Array.prototype.reduceRight()
- Применяет функцию к каждому элементу в массиве (справа-налево) и накапливает результат в переменной. Смотрите также
Array.prototype.reduceRight()
. Float32Array.prototype.reverse()
- Переставляет элементы массива в обратном порядке - первый становится последним и так далее. Смотрите также
Array.prototype.reverse()
. Float32Array.prototype.set()
- Сохраняет значения в массиве.
Float32Array.prototype.slice()
- Выделяет часть массива и возвращает новый с этими значениями. Смотрите также
Array.prototype.slice()
. Float32Array.prototype.some()
- Возвращает true если хотя бы один элемент удовлетворяет условию. Смотрите также
Array.prototype.some()
. Float32Array.prototype.sort()
- Сортирует элементы массива по порядку и возвращает этот массив. Смотрите также
Array.prototype.sort()
. Float32Array.prototype.subarray()
Возваращает новый Float32Array
с заданного начального по конечный индекс.Float32Array.prototype.values()
- Возвращает новый объект
Array Iterator
котрый содержит значения всех элементов в массиве. Смотрите такжеArray.prototype.values()
. Float32Array.prototype.toLocaleString()
- Возвращает локализированную строку представляющую массив и его элементы. Смотрите также
Array.prototype.toLocaleString()
. Float32Array.prototype.toString()
- Возвращает строку представляющую массив и его элементы. Смотрите также
Array.prototype.toString()
. Float32Array.prototype[@@iterator]()
Возвращает новый объект 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 | Status | Comment |
---|---|---|
Typed Array Specification | Устаревшая | Заменены в ECMAScript 6. |
ECMAScript 2015 (6th Edition, ECMA-262) Определение 'TypedArray constructors' в этой спецификации. |
Стандарт | Первоначальное появление в стандарте ECMA. Показывает что new обязательно . |
ECMAScript (ECMA-262) Определение 'TypedArray constructors' в этой спецификации. |
Живой стандарт | ECMAScript 2017 changed the Float32Array constructor to use the ToIndex operation and allows constructors with no arguments. |
Браузерная совместимость
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]);