ArrayBuffer
Baseline
Ampliamente disponible
*
Esta característica está consolidada y funciona en muchos dispositivos y versiones de navegador. Está disponible en todos los navegadores desde julio de 2015.
* Algunas partes de esta característica pueden tener distintos niveles de compatibilidad.
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
truesiarges una de las vistas deArrayBuffer, como objetos de arreglo tipados o unDataView. Devuelvefalseen 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
ArrayBufferque contiene una copia de los bytes de esteArrayBufferdesde el comienzo (inclusivo)beginhasta el fin (exclusivo)end. Sibeginoendson 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
| Especificación |
|---|
| ECMAScript® 2027 Language Specification> # sec-arraybuffer-objects> |
Compatibilidad con navegadores
Véase también
- Un polyfill de
ArrayBufferestá disponible encore-js - Arraglos tipados en JavaScript
SharedArrayBuffer- RangeError: longitud de array invalida