ArrayBuffer en JavaScript | Explicado

ArrayBuffer en JavaScript | Explicado
En esta publicación, discutiremos cuál es el objeto ArrayBuffer en JavaScript junto con ejemplos.

¿Qué es ArrayBuffer??

Una matriz de bytes se conoce como un búfer de matriz en JavaScript, mientras que se conoce como una "matriz de bytes" en otros idiomas.

  • El Arraybuffer El objeto representa un búfer de datos binarios sin procesar de longitud fija cuyo contenido no se puede alterar directamente.
  • También se puede usar un objeto DataView para acceder a él, que es un sin tipo Vista súper flexible a través de un arraybuffer o cualquier objeto de matriz mecanografiado que consta de métodos de matriz regulares como map, encontrar corte, etc.
  • El contenido se lee y se escribe usando estos objetos.

Cualquier modificación a un objeto del Arraybuffer Será visible para los otros objetos y solo un objeto DataView o una matriz escrita debe incluirse en un solo búfer de matriz.

Sintaxis de ArrayBuffer

El Sintaxis de ArrayBuffer en JavaScript se da a continuación:

nuevo ArrayBuffer (Bytelength);

El longitud es un argumento obligatorio y denota la longitud o el tamaño del búfer de matriz en bytes que se está creando.

Nota: El valor de retorno será el nuevo objeto ArrayBuffer con tamaño longitud.

Para comprender aún más el concepto de un objeto ArrayBuffer en JavaScript, pasemos por un ejemplo.

Ejemplo 1

En este ejemplo, simplemente inicializaremos el objeto ArrayBuffer y daremos el tamaño 16 y luego la consola registra la longitud del búfer inicializado utilizando el método incorporado del objeto de matriz/búfer bytelength:

// Inicializar el búfer con la longitud 16
var myBuffer = new ArrayBuffer (16);
// Registro de consola la longitud de MyBuffer
consola.Log (mybuffer.bytelength); // dieciséis

Ejemplo 2

Manipulemos el objeto ArrayBuffer un poco más usando DataView. Como se discutió anteriormente, no podemos modificar ni realizar ninguna operación en ArrayObject a menos que usemos una vista:

// Inicializar el objeto ArrayBuffer con el tamaño 16
var myBuffer = new ArrayBuffer (16);
// DataView que se refiere al objeto MyBuffer
var ver1 = new DataView (myBuffer);
// int8array que se refiere al objeto mybuffer
var ver2 = new Int8Array (myBuffer);
// establecer el valor en 32 bits
Ver1.setInt32 (0, 0x76543210);
// Registro de consola el valor de 32 bits
consola.log ("Valor de 32 bits:"+Ver1.getInt32 (0).toString (16));
// Registro de consola solo el valor de 8 bits
consola.log ("Valor de 8 bits:"+Ver1.getInt8 (0).toString (16));
consola.Log ("Valor de 32 bit:"+View2 [0].toString (16));

En el código anterior, primero, inicializamos un objeto ArrayBuffer con el tamaño 16 y luego nos referimos a ese ArrayObject con un DataView. Repetimos el proceso de inicialización de otra vista utilizando el Int8array que representa la matriz de enteros firmados de 8 bits de los dos complementos. Después de eso, establecemos el primer valor de vista en 32 bits y el segundo valor de vista al valor de 8 bits y luego lo registra la consola:

Conclusión

Uno de los objetos centrales en JavaScript es el Arraybuffer objeto, que es una referencia de espacio de memoria contigua de longitud fija cuyo contenido no se puede alterar directamente; En cambio, necesitamos una matriz escrita o una vista de datos. La vista de datos especifica un formato utilizando métodos en JavaScript, por ejemplo, getuint8 (compensación). En pocas palabras, se utiliza un ArrayBuffer para almacenar datos binarios, por ejemplo, datos binarios de un archivo o imagen.

En esta publicación, discutimos el objeto ArrayBuffer en JavaScript junto con dos ejemplos en los que el primero simplemente inicializamos el objeto ArrayBuffer, y en el segundo ejemplo, manipulamos el objeto ArrayBuffer.