MDN wants to learn about developers like you: https://qsurvey.mozilla.com/s3/MDN-dev-survey

To tłumaczenie jest niekompletne. Pomóż przetłumaczyć ten artykuł z języka angielskiego.

Objekt ArrayBuffer reprezentuje buffer z surowymi danymi binarnymi o niezmiennej długości. Nie możesz bezpośrednio wpływać na zawartość obiektu ArrayBuffer, możesz natomiast stworzyć jeden z obiektów typedArray lub obiekt DataView reprezentujący buffer w specjalnym formacie i używać tego obiektu do odczytu oraz zapisu treści buffera.

Składnia

new ArrayBuffer(length)

Parametry

długość(length)
Rozmiar, w bajtach, tworzony z bufferu tablicy (array buffer).

Wartość zwrócona

Nowy obiekt ArrayBuffer o określonym rozmiarze. Jego wartości początkowe wynoszą 0.

Wyjątki

RangeError pojawi się, jeśli długość (length) jest większa niż Number.MAX_SAFE_INTEGER (>= 2 ** 53) lub ujemna.

Opis

Konstruktor ArrayBuffer tworzy nowy ArrayBuffer z podanej długości (length) w bajtach.

Otrzymywanie bufferu tablicy z istniejących danych

Właściwości

ArrayBuffer.length
Właściwość długości konstruktura ArrayBuffer, której wartość wynosi 1.
get ArrayBuffer[@@species]
Funkcja konstruktora jest używana do tworzenia dostarczanych obiektów.
ArrayBuffer.prototype
Pozwala dodać właściwości do wszystkich obiektów ArrayBuffer.

Metody

ArrayBuffer.isView(arg)
Zwraca true, jeśli arg jest jednym z widoków ArrayBuffer, jak obiekty typedArray lub DataView. W innych przypadkach zwraca false.
ArrayBuffer.transfer(oldBuffer [, newByteLength])
Zwraca nowy ArrayBuffer, którego zawartości są pobrane z danych oldBuffer. Następnie zostaje skrócony lub przedłużony od 0 przez newByteLength.

Instancje ArrayBuffer

Wszystkie instancje ArrayBuffer dziedziczą z ArrayBuffer.prototype.

Właściwości

ArrayBuffer.prototype.constructor
Specifies the function that creates an object's prototype. The initial value is the standard built-in ArrayBuffer constructor.
ArrayBuffer.prototype.byteLength Read only
The size, in bytes, of the array. This is established when the array is constructed and cannot be changed. Read only.

Metody

ArrayBuffer.prototype.slice()
Returns a new ArrayBuffer whose contents are a copy of this ArrayBuffer's bytes from begin, inclusive, up to end, exclusive. If either begin or end is negative, it refers to an index from the end of the array, as opposed to from the beginning.

ArrayBuffer.slice()
Posiada tę samą funkcjonalność, jak ArrayBuffer.prototype.slice().

Przykłady

W niniejszym przykładzie tworzymy 8-bajtowy buffer z widokiem Int32Array odnoszącym się do buffera:

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

Specyfikacje

Specyfikacja Status Komentarz
Typed Array Specification Obsolete Zastępiony przez ECMAScript 6.
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'ArrayBuffer' in that specification.
Standard Definicja początkowa w standardzie ECMA. Zgłasza, że wymagany jest new.
ECMAScript Latest Draft (ECMA-262)
The definition of 'ArrayBuffer' in that specification.
Draft  

Kompatybilność z przeglądarkami

Cecha Chrome Firefox (Gecko) Internet Explorer Opera Safari
Wsparcie podstawowe 7.0 4.0 (2) 10 11.6 5.1
ArrayBuffer() bez odsyłacza new ? 44 (44) ? ? ?
ArrayBuffer.slice() No support (Yes)
No support 53 (53)
No support No support ?
Cecha Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Wsparcie podstawowe 4.0 (Yes) 4.0 (2) 10 11.6 4.2
ArrayBuffer() bez odsyłacza new ? ? 44.0 (44) ? ? ?
ArrayBuffer.slice() No support No support (Yes)
No support 53.0 (53)
No support No support ?

Zapis kompatybilny

Od ECMAScript 2015 kontruktory ArrayBuffer muszą być tworzone poprzez operator new. Wywoływanie kontruktora ArrayBuffer jako funkcji bez new zaskutkuje od teraz pojawieniem się TypeError.

var dv = ArrayBuffer(10);
// TypeError: calling a builtin ArrayBuffer constructor 
// without new is forbidden
var dv = new ArrayBuffer(10);

Zobacz również

Autorzy i etykiety dokumentu

 Autorzy tej strony: drm404
 Ostatnia aktualizacja: drm404,