Esta traducción está incompleta. Por favor, ayuda a traducir este artículo del inglés.
El objecto ArrayBuffer
se usa para representar un buffer generico de datos crudos (raw), de un tamaño fijo. No se puede manipular directamente el contenido de un ArrayBuffer
; sin embargo, puedes crear uno de los arrays tipados o un objeto DataView
que representa el buffer en un formato especifico., y usarlo para leer y escribir el contenido del buffer.
Sintaxis
new ArrayBuffer(length)
Parámetros
length
- El tamaño en bytes, del array buffer que quieres crear.
Valor de retorno
Un objeto ArrayBuffer
nuevo del tamaño especifico. Su contenido se inicializa a cero.
Descripción
El constructor de ArrayBuffer
crea un nuevo ArrayBuffer
del tamaño especificado en bytes.
Obtener un array buffer sobre datos existentes
Propiedades
ArrayBuffer.length
- El tamaño de constructor de
ArrayBuffer
cuyo valor es 1. ArrayBuffer.prototype
- Permite añadir propiedades a todos los objetos
ArrayBuffer
.
Métodos
ArrayBuffer.isView(arg)
- Devuelve
true
siarg
es una de las vistas de ArrayBuffer, como pueden ser los arrays tipados o unDataView
. Sino devuelvefalse
. ArrayBuffer.transfer(oldBuffer [, newByteLength])
-
Devuelve un nuevo
ArrayBuffer
cuyo contenido se extrae de los datos deoldBuffer y o los datos se truncano
is o se rellenan denewByteLength ceros.
Instancias de ArrayBuffer
Todas las instancias de ArrayBuffer
heredan de ArrayBuffer.prototype
.
Propiedades
- 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.
Métodos
ArrayBuffer.prototype.slice()
- Returns a new
ArrayBuffer
whose contents are a copy of thisArrayBuffer
's bytes frombegin
, inclusive, up toend
, exclusive. If eitherbegin
orend
is negative, it refers to an index from the end of the array, as opposed to from the beginning.
Ejemplo
En este ejemplo creamos un buffer de 8-bytes con una vista del tipo Int32Array
referenciando dicho buffer:
var buffer = new ArrayBuffer(8); var view = new Int32Array(buffer);
Especificaciones
Specification | Status | Comment |
---|---|---|
Typed Array Specification | Obsolete | Superseded by ECMAScript 6. |
ECMAScript 2015 (6th Edition, ECMA-262) The definition of 'ArrayBuffer' in that specification. |
Standard | Initial definition in an ECMA standard. Specified that new is required. |
ECMAScript 2016 Draft (7th Edition, ECMA-262) The definition of 'ArrayBuffer' in that specification. |
Draft |
Compatibildiad de navegadores
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | 7.0 | 4.0 (2) | 10 | 11.6 | 5.1 |
ArrayBuffer() without new throws |
? | 44 (44) | ? | ? | ? |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | 4.0 | (Yes) | 4.0 (2) | 10 | 11.6 | 4.2 |
ArrayBuffer() without new throws |
? | ? | 44.0 (44) | ? | ? | ? |
Anotaciones sobre compatibilidad
Desde el ECMAScript 2015, los constructores de ArrayBuffer
requieren ser instanciados usando el operador new
. Ejecutar el constructor de un ArrayBuffer
como una funciónsin el new
, lanzará un TypeError
de ahora en adelante.
var dv = ArrayBuffer(10); // TypeError: calling a builtin ArrayBuffer constructor // sin new está prohibido
var dv = new ArrayBuffer(10);