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/arraybuffer/index.html | 145 +++++++++++++++++++++ .../global_objects/arraybuffer/isview/index.html | 88 +++++++++++++ .../global_objects/arraybuffer/slice/index.html | 125 ++++++++++++++++++ 3 files changed, 358 insertions(+) create mode 100644 files/ru/web/javascript/reference/global_objects/arraybuffer/index.html create mode 100644 files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html create mode 100644 files/ru/web/javascript/reference/global_objects/arraybuffer/slice/index.html (limited to 'files/ru/web/javascript/reference/global_objects/arraybuffer') diff --git a/files/ru/web/javascript/reference/global_objects/arraybuffer/index.html b/files/ru/web/javascript/reference/global_objects/arraybuffer/index.html new file mode 100644 index 0000000000..3dfc1687ab --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/arraybuffer/index.html @@ -0,0 +1,145 @@ +--- +title: ArrayBuffer +slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer +tags: + - Буфер + - Типизированные массивы +translation_of: Web/JavaScript/Reference/Global_Objects/ArrayBuffer +--- +
{{JSRef}}
+ +

Объект ArrayBuffer используется для работы с бинарными данными. Он представляет собой ссылку на поток "сырых" двоичных данных, однако работать с ними напрямую возможности не дает. Вместо этого, вы можете создать типизированный массив или объект {{jsxref("DataView")}}, который можно использовать для чтения и записи данных в ArrayBuffer

+ +

Синтаксис

+ +
new ArrayBuffer(length)
+
+ +

Параметры

+ +
+
length
+
Длина создаваемого буфера в байтах.
+
+ +

Возвращаемое значение

+ +

Новый объект ArrayBuffer определенного размера. Изначально содержимое равно 0.

+ +

Описание

+ +

Конструктор ArrayBuffer создает новый ArrayBuffer установленного в байтах размера.

+ +

Создание буфера

+ + + +

Свойства

+ +
+
ArrayBuffer.length
+
Длина конструктора ArrayBuffer, которая равна 1.
+
{{jsxref("ArrayBuffer.prototype")}}
+
Позволяет расширить прототип всех ArrayBuffer объектов.
+
+ +

Методы

+ +
+
{{jsxref("ArrayBuffer.isView", "ArrayBuffer.isView(arg)")}}
+
Возвращает true если arg – одно из представлений ArrayBuffer, например типизированный массив или {{jsxref("DataView")}}. Вернет false в остальных случаях.
+
{{jsxref("ArrayBuffer.transfer", "ArrayBuffer.transfer(oldBuffer [, newByteLength])")}} {{experimental_inline}}
+
+
Вернет новый ArrayBuffer, контент которого будет взят из данных oldBuffer, а затем усечен или дополнен нулевыми значениями до newByteLength.
+
+
+ +

Пример

+ +

В этом примере мы создаем 8-байтный буфер с {{jsxref("Global_Objects/Int32Array", "Int32Array")}} представлением:

+ +
var buffer = new ArrayBuffer(8);
+var view   = new Int32Array(buffer);
+ +

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

+ + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Typed Array')}}{{Spec2('Typed Array')}}Заменен спецификацией ECMAScript 6.
{{SpecName('ES6', '#sec-arraybuffer-constructor', 'ArrayBuffer')}}{{Spec2('ES6')}}Первичное определение в ECMA стандарте.
+ +

Таблица совместимости

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support7.0{{CompatGeckoDesktop("2")}}1011.65.1
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support4.0{{CompatVersionUnknown}}{{CompatGeckoMobile("2")}}1011.64.2
+
+ +

Также

+ + diff --git a/files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html b/files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html new file mode 100644 index 0000000000..22971e53cd --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/arraybuffer/isview/index.html @@ -0,0 +1,88 @@ +--- +title: ArrayBuffer.isView() +slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/isView +tags: + - ArrayBuffer + - JavaScript + - TypedArrays +translation_of: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/isView +--- +
{{JSRef}}
+ +

Метод ArrayBuffer.isView(arg) возвращает true, если arg является одним из таких видов ArrayBuffer, как типизированные массивы или {{jsxref("DataView")}}; в ином случае возвращает false.

+ +
{{EmbedInteractiveExample("pages/js/arraybuffer-isview.html")}}
+ + + +

Синтаксис

+ +
ArrayBuffer.isView(arg)
+ +

Параметры

+ +
+
arg
+
Проверяемое значение.
+
+ +

Возвращаемое значение

+ +

true, если переданный аргумент является одним из видов ArrayBuffer; в противном случае false.

+ +

Примеры

+ +
ArrayBuffer.isView();                    // false
+ArrayBuffer.isView([]);                  // false
+ArrayBuffer.isView({});                  // false
+ArrayBuffer.isView(null);                // false
+ArrayBuffer.isView(undefined);           // false
+ArrayBuffer.isView(new ArrayBuffer(10)); // false
+
+ArrayBuffer.isView(new Uint8Array());    // true
+ArrayBuffer.isView(new Float32Array());  // true
+ArrayBuffer.isView(new Int8Array(10).subarray(0, 3)); // true
+
+var buffer = new ArrayBuffer(2);
+var dv = new DataView(buffer);
+ArrayBuffer.isView(dv); // true
+
+ +

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

+ + + + + + + + + + + + + + + + + + + + + + + + +
СпецификацияСтатусПримечание
{{SpecName('Typed Array')}}УстарелоЗаменено в ECMAScript 2015.
{{SpecName('ES2015', '#sec-arraybuffer.isview', 'ArrayBuffer.isView')}}{{Spec2('ES2015')}}Изначальное определене в стандарте ECMA.
{{SpecName('ESDraft', '#sec-arraybuffer.isview', 'ArrayBuffer.isView')}}{{Spec2('ESDraft')}}
+ +

Совместимость

+ + + +

{{Compat("javascript.builtins.ArrayBuffer.isView")}}

+ +

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

+ + diff --git a/files/ru/web/javascript/reference/global_objects/arraybuffer/slice/index.html b/files/ru/web/javascript/reference/global_objects/arraybuffer/slice/index.html new file mode 100644 index 0000000000..84b8592a5e --- /dev/null +++ b/files/ru/web/javascript/reference/global_objects/arraybuffer/slice/index.html @@ -0,0 +1,125 @@ +--- +title: ArrayBuffer.prototype.slice() +slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/slice +translation_of: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/slice +--- +
{{JSRef}}
+ +

Метод slice() вернет новый ArrayBuffer, содержимое которого, будет копией содержимого, содержащегося в исходом ArrayBuffer, начиная с begin (включительно), и до end(не включая).

+ +

Syntax

+ +
arraybuffer.slice(begin[, end])
+ +

Parameters

+ +
+
begin
+
Указывает с какого индекса начинать slice, начинается с нуля.
+
+ +
+
end
+
Указывает до какого индекса делать slice. Если не указан - slice будет выполнен до конца ArrayBuffer. Разница между begin и end должна быть положительной и быть не более длины ArrayBuffer, в противном случае будет выставлен 0.
+
+ +

Return value

+ +

Новый  объект ArrayBuffer.

+ +

Description

+ +

Метод slice копирует, до индекса в параметре end (не включительно) .  В случае если begin или end негативен, то индекс считается с конца массива.

+ +

Examples

+ +

Копируем ArrayBuffer

+ +
var buf1 = new ArrayBuffer(8);
+var buf2 = buf1.slice(0);
+
+ +

Specifications

+ + + + + + + + + + + + + + + + + + + + + + + + +
SpecificationStatusComment
{{SpecName('Typed Array')}}{{Spec2('Typed Array')}}Superseded by EMCAScript 6.
{{SpecName('ES6', '#sec-arraybuffer.prototype.slice', 'ArrayBuffer.prototype.slice')}}{{Spec2('ES6')}}Initial definition in an ECMA standard.
{{SpecName('ESDraft', '#sec-arraybuffer.prototype.slice', 'ArrayBuffer.prototype.slice')}}{{Spec2('ESDraft')}} 
+ +

Browser compatibility

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic support{{CompatVersionUnknown}}{{ CompatGeckoDesktop("12") }}11{{CompatVersionUnknown}}6
+
+ +
+ + + + + + + + + + + + + + + + + + + + + +
FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic support{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{ CompatGeckoMobile("12") }}11{{CompatVersionUnknown}}6.0
+
+ +

See also

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