Manual de Referência Array Tipificada JavaScript
- Página anterior Sentenças JS
- Próxima página Objeto Window
Array tipificado do JavaScript
No Javascript, os arrays tipificados são áreas de memória em buffer semelhantes a arrays binários.
Não existe uma propriedade ou objeto JavaScript chamado TypedArray, mas as propriedades e métodos podem ser usados com objetos de array tipificado:
instância
const myArr = new Int8Array(10);
objeto de array tipificado
objeto | tipo de dados | escopo |
---|---|---|
Int8Array | inteiro com sinal (byte) | -128/127 |
Uint8Array | inteiro sem sinal (octeto) | 0/255 |
Uint8ClampedArray | inteiro sem sinal (octeto) | 0/255 |
Int16Array | inteiro curto | -32768/32767 |
Uint16Array | inteiro curto sem sinal | 0/65535 |
Int32Array | inteiro longo com sinal | -231/231-1 |
Uint32Array | inteiro longo sem sinal | 0/232 |
Float32Array | flutuante - 7 dígitos significativos | 1.2x10-38/3.4x1038 |
Float64Array | flutuante duplo precisão - 16 dígitos significativos | 5.0x10-324/1.8x10308 |
BigInt64Array | inteiro grande com sinal | -263/263-1 |
BigUint64Array | Grande inteiro sem sinal | 0/264 |
Explicação
Os arrays tipificados não são arrays.
O isArray() em arrays tipificados retorna false.
Os arrays tipificados não suportam muitos métodos de array (como push e pop).
Os arrays tipificados são objetos semelhantes a arrays, usados para armazenar dados binários em memória.
Métodos e atributos do Typed Array
Método / Atributo | Descrição |
---|---|
BYTES_PER_ELEMENT | Calcula o atributo do número de bytes usados para armazenar um elemento. |
fill() | Preencha todos os elementos com um valor. |
find() | Retorna o primeiro elemento que atende à condição. |
name | Retorna o nome do array tipificado. |
of() | Crie arrays tipificados a partir de arrays. |
some() | Se um elemento atender a uma condição, retorna true. |
Uint8Array vs Uint8ClampedArray
A diferença entre Uint8Array e Uint8ClampedArray está na forma de adicionar valores.
Se um elemento do Uint8ClampedArray for definido fora do intervalo de 0-255, ele será definido como 0 ou 255 por padrão.
Os arrays tipificados pegam apenas os 8 primeiros bits de valor.
Vantagens dos arrays tipificados
Os arrays tipificados fornecem um método para manipular dados binários, tão eficaz quanto um array em C.
Os arrays tipificados são memória original, então o JavaScript pode passá-los diretamente para qualquer função, sem precisar converter os dados para outra representação.
Os arrays tipificados são muito mais rápidos que os arrays normais, usados para passar dados para funções que podem usar dados binários originais (jogos de computador, WebGL, Canvas, API de arquivos, API de mídia).
O API do navegador suporta arrays tipificados
Instância do Fetch API
fetch(url) .then(request => request.arrayBuffer()) .then(arrayBuffer =>...);
Instância de Canvas
const canvas = document.getElementById('my_canvas'); const context = canvas.getContext('2d'); const imageData = context.getImageData(0, 0, canvas.width, canvas.height); const uint8ClampedArray = imageData.data;
Suporte do navegador
typedArray É uma característica do ECMAScript6 (ES6).
Todos os navegadores modernos suportam ES6 (JavaScript 2015).
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
Sim | Sim | Sim | Sim | Sim |
O Internet Explorer 11 (e versões anteriores) não suporta typedArray.
- Página anterior Sentenças JS
- Próxima página Objeto Window