From 074785cea106179cb3305637055ab0a009ca74f2 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:42:52 -0500 Subject: initial commit --- .../global_objects/float32array/index.html | 202 +++++++++++++++++++++ 1 file changed, 202 insertions(+) create mode 100644 files/ru/web/javascript/reference/global_objects/float32array/index.html (limited to 'files/ru/web/javascript/reference/global_objects/float32array') diff --git a/files/ru/web/javascript/reference/global_objects/float32array/index.html b/files/ru/web/javascript/reference/global_objects/float32array/index.html new file mode 100644 index 0000000000..dec9a2b937 --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/float32array/index.html @@ -0,0 +1,202 @@ +--- +title: Float32Array +slug: Web/JavaScript/Reference/Global_Objects/Float32Array +translation_of: Web/JavaScript/Reference/Global_Objects/Float32Array +--- +
{{JSRef}}
+ +

Объект 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.

+ +

Свойства

+ +
+
{{jsxref("TypedArray.BYTES_PER_ELEMENT", "Float32Array.BYTES_PER_ELEMENT")}}
+
Возвращает число, соответствующее размеру элемента массива в байтах. Для Float32Array это 4.
+
Float32Array.length
+
Статическое свойство "длина" со значением 0. Если хотите получить актуальную длину массива (число элементов) используйте {{jsxref("TypedArray.prototype.length", "Float32Array.prototype.length")}}.
+
{{jsxref("TypedArray.name", "Float32Array.name")}}
+
Возвращает строковое представление названия конструктора. В данном случае Float32Array вернёт "Float32Array".
+
{{jsxref("TypedArray.prototype", "Float32Array.prototype")}}
+
Прототип объекта TypedArray.
+
+ +

Методы

+ +
+
{{jsxref("TypedArray.from", "Float32Array.from()")}}
+
Создаёт новый Float32Array из массивоподобного или итерируемого объекта. Смотрите также {{jsxref("Array.from()")}}.
+
{{jsxref("TypedArray.of", "Float32Array.of()")}}
+
Создаёт новый Float32Array с заданным числом элементов. Смотрите также {{jsxref("Array.of()")}}.
+
+ +

Float32Array prototype

+ +

  Любые Float32Array объекты наследуются от {{jsxref("TypedArray.prototype", "%TypedArray%.prototype")}}.

+ +

Свойства

+ +
+
Float32Array.prototype.constructor
+
Возвращает функцию, которая создаёт экземпляр прототипа. В данном случае это конструктор Float32Array.
+
{{jsxref("TypedArray.prototype.buffer", "Float32Array.prototype.buffer")}} {{readonlyInline}}
+
Возвращает {{jsxref("ArrayBuffer")}}, на который ссылается Float32Array. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.
+
{{jsxref("TypedArray.prototype.byteLength", "Float32Array.prototype.byteLength")}} {{readonlyInline}}
+
Возвращает длину в байтах для Float32Array с начала его {{jsxref("ArrayBuffer")}}. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.
+
{{jsxref("TypedArray.prototype.byteOffset", "Float32Array.prototype.byteOffset")}} {{readonlyInline}}
+
Возвращает смещение (в байтах) Float32Array относительно начала {{jsxref("ArrayBuffer")}}. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.
+
{{jsxref("TypedArray.prototype.length", "Float32Array.prototype.length")}} {{readonlyInline}}
+
Возвращает число элементов, хранящихся в Float32Array. Автоматически изменяется при операциях над массивом и поэтому доступен только для чтения.
+
+ +

Методы

+ +
+
{{jsxref("TypedArray.copyWithin", "Float32Array.prototype.copyWithin()")}}
+
Копирует последовательность элементов в массив. Смотрите также {{jsxref("Array.prototype.copyWithin()")}}.
+
{{jsxref("TypedArray.entries", "Float32Array.prototype.entries()")}}
+
Возвращает новый объект Array Iterator, который содержит пары ключ-значение для каждого элемента в массиве. Смотрите также {{jsxref("Array.prototype.entries()")}}.
+
{{jsxref("TypedArray.every", "Float32Array.prototype.every()")}}
+
Проверяет, что все элементы в массиве соответствуют условию. Смотрите также {{jsxref("Array.prototype.every()")}}.
+
{{jsxref("TypedArray.fill", "Float32Array.prototype.fill()")}}
+
Заполняет весь массив от начального до последнего индекса одинаковыми элементами. Смотрите также {{jsxref("Array.prototype.fill()")}}.
+
{{jsxref("TypedArray.filter", "Float32Array.prototype.filter()")}}
+
Возвращает новый массив со всеми элементами удовлетворяющеми условию. Смотрите также {{jsxref("Array.prototype.filter()")}}.
+
{{jsxref("TypedArray.find", "Float32Array.prototype.find()")}}
+
Возвращает найденное значение в массиве, если найден элемент соответствуший условию, в противном случае возвращает undefined. Смотрите также {{jsxref("Array.prototype.find()")}}.
+
{{jsxref("TypedArray.findIndex", "Float32Array.prototype.findIndex()")}}
+
Возвращает индекс найденного значения в массиве, если найден элемент соответствуеший условию, в противном случае возвращает -1. Смотрите также {{jsxref("Array.prototype.findIndex()")}}.
+
{{jsxref("TypedArray.forEach", "Float32Array.prototype.forEach()")}}
+
Вызывает функцию для каждого элемента в массиве. Смотрите также {{jsxref("Array.prototype.forEach()")}}.
+
{{jsxref("TypedArray.includes", "Float32Array.prototype.includes()")}} {{experimental_inline}}
+
Проверяет что массив включает себя элемент, возвращает соответственно true или false. Смотрите также {{jsxref("Array.prototype.includes()")}}.
+
{{jsxref("TypedArray.indexOf", "Float32Array.prototype.indexOf()")}}
+
Возвращает индекс элемента соответствующего условию (равен значению), в противном случае возвращает -1. Смотрите также {{jsxref("Array.prototype.indexOf()")}}.
+
{{jsxref("TypedArray.join", "Float32Array.prototype.join()")}}
+
Объединяет элементы массива в строку. Смотрите также {{jsxref("Array.prototype.join()")}}.
+
{{jsxref("TypedArray.keys", "Float32Array.prototype.keys()")}}
+
Возвращает новый Array Iterator, который содержит ключи элементов в массиве. Смотрите также {{jsxref("Array.prototype.keys()")}}.
+
{{jsxref("TypedArray.lastIndexOf", "Float32Array.prototype.lastIndexOf()")}}
+
Возвращает последний найденный индекс соответствующий искомому значению, в противном случае возвращает - 1. Смотрите также {{jsxref("Array.prototype.lastIndexOf()")}}.
+
{{jsxref("TypedArray.map", "Float32Array.prototype.map()")}}
+
Возвращает новый массив с результатом применения функции к каждому элементу в этом массиве. Смотрите также {{jsxref("Array.prototype.map()")}}.
+
{{jsxref("TypedArray.move", "Float32Array.prototype.move()")}} {{non-standard_inline}} {{unimplemented_inline}}
+
Нестандаризированная версия {{jsxref("TypedArray.copyWithin", "Float32Array.prototype.copyWithin()")}}.
+
{{jsxref("TypedArray.reduce", "Float32Array.prototype.reduce()")}}
+
Применяет функцию к каждому элементу в массиве (слева-направо) и накапливает результат в переменной. Смотрите также {{jsxref("Array.prototype.reduce()")}}.
+
{{jsxref("TypedArray.reduceRight", "Float32Array.prototype.reduceRight()")}}
+
Применяет функцию к каждому элементу в массиве (справа-налево) и накапливает результат в переменной. Смотрите также {{jsxref("Array.prototype.reduceRight()")}}.
+
{{jsxref("TypedArray.reverse", "Float32Array.prototype.reverse()")}}
+
Переставляет элементы массива в обратном порядке - первый становится последним и так далее. Смотрите также {{jsxref("Array.prototype.reverse()")}}.
+
{{jsxref("TypedArray.set", "Float32Array.prototype.set()")}}
+
Сохраняет значения в массиве.
+
{{jsxref("TypedArray.slice", "Float32Array.prototype.slice()")}}
+
Выделяет часть массива и возвращает новый с этими значениями. Смотрите также {{jsxref("Array.prototype.slice()")}}.
+
{{jsxref("TypedArray.some", "Float32Array.prototype.some()")}}
+
Возвращает true если хотя бы один элемент удовлетворяет условию. Смотрите также {{jsxref("Array.prototype.some()")}}.
+
{{jsxref("TypedArray.sort", "Float32Array.prototype.sort()")}}
+
Сортирует элементы массива по порядку и возвращает этот массив. Смотрите также {{jsxref("Array.prototype.sort()")}}.
+
{{jsxref("TypedArray.subarray", "Float32Array.prototype.subarray()")}}
+
Возваращает новый Float32Array с заданного начального по конечный индекс.
+
{{jsxref("TypedArray.values", "Float32Array.prototype.values()")}}
+
Возвращает новый объект Array Iterator котрый содержит значения всех элементов в массиве. Смотрите также {{jsxref("Array.prototype.values()")}}.
+
{{jsxref("TypedArray.toLocaleString", "Float32Array.prototype.toLocaleString()")}}
+
Возвращает локализированную строку представляющую массив и его элементы. Смотрите также {{jsxref("Array.prototype.toLocaleString()")}}.
+
{{jsxref("TypedArray.toString", "Float32Array.prototype.toString()")}}
+
Возвращает строку представляющую массив и его элементы. Смотрите также {{jsxref("Array.prototype.toString()")}}.
+
{{jsxref("TypedArray.@@iterator", "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]
+ + + +

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

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Typed Array')}}{{Spec2('Typed Array')}}Заменены в ECMAScript 6.
{{SpecName('ES6', '#table-49', 'TypedArray constructors')}}{{Spec2('ES6')}}Первоначальное появление в стандарте ECMA. Показывает что new обязательно.
{{SpecName('ESDraft', '#table-49', 'TypedArray constructors')}}{{Spec2('ESDraft')}}ECMAScript 2017 changed the Float32Array constructor to use the ToIndex operation and allows constructors with no arguments.
+ +

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

+ + + +

{{Compat("javascript.builtins.Float32Array")}}

+ + + +

Заметки по совместимости

+ +

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

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

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

+ + -- cgit v1.2.3-54-g00ecf