ArrayBuffer
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
El objeto ArrayBuffer
se usa para representar un buffer genérico, de datos binarios brutos con una longitud específica.
Es un arreglo de bytes, frecuentemente llamado de esta forma en otros lenguajes de programación. No se puede manipular directamente el contenido de un ArrayBuffer
; en su lugar, se crea uno de los objetos de arreglos tipados o un objeto DataView
que representa el buffer en un formato específico, y se usa para leer y escribir el contenido del buffer.
El constructor ArrayBuffer
crea un nuevo ArrayBuffer
de la longitud especificada en bytes. También se puede obtener un ArrayBuffer
desde datos existentes, por ejemplo, desde una cadena de caracteres en Base64 o desde un archivo local.
Constructor
ArrayBuffer()
-
Crea un nuevo objeto
ArrayBuffer
.
Propiedades estáticas
get ArrayBuffer[@@species]
-
La función constructora que se usa para crear objetos derivados.
Métodos estáticos
ArrayBuffer.isView(arg)
-
Devuelve
true
siarg
es una de las vistas deArrayBuffer
, como objetos de arreglo tipados o unDataView
. Devuelvefalse
en caso contrario.
Propiedades de instancias
ArrayBuffer.prototype.byteLength
-
Propiedad de solo lectura con la longitud en bytes del
ArrayBuffer
. Se establece cuando el arreglo es construido y no puede ser cambiada.
Métodos de instancias
ArrayBuffer.prototype.slice()
-
Devuelve un nuevo
ArrayBuffer
que contiene una copia de los bytes de esteArrayBuffer
desde el comienzo (inclusivo)begin
hasta el fin (exclusivo)end
. Sibegin
oend
son negativos, esto se refiere a un índice desde el final del arreglo, en lugar del comienzo.
Ejemplos
Creando un ArrayBuffer
En este ejemplo, se crea un buffer de 8 bytes con una vista Int32Array
consultando el buffer.
const buffer = new ArrayBuffer(8);
const view = new Int32Array(buffer);
Especificaciones
Specification |
---|
ECMAScript Language Specification # sec-arraybuffer-objects |
Compatibilidad con navegadores
BCD tables only load in the browser
Véase también
- Un polyfill de
ArrayBuffer
está disponible encore-js
- Arraglos tipados en JavaScript
SharedArrayBuffer
- RangeError: longitud de array invalida