You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 4-binary/01-arraybuffer-binary-arrays/article.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,7 +19,7 @@ alert(buffer.byteLength); // 16
19
19
20
20
Esto asigna un área de memoria contigua de 16 bytes y la rellena previamente con ceros.
21
21
22
-
```warn header="`ArrayBuffer`is not an array of something"
22
+
```warn header="`ArrayBuffer`no es un array de algo"
23
23
Eliminemos una posible fuente de confusión. `ArrayBuffer` no tiene nada en común con `Array`:
24
24
- Tiene una longitud fija, no podemos aumentarla ni disminuirla.
25
25
- Ocupa exactamente ese espacio en la memoria.
@@ -30,7 +30,7 @@ Eliminemos una posible fuente de confusión. `ArrayBuffer` no tiene nada en com
30
30
31
31
**Para manipular un `ArrayBuffer`, necesitamos utilizar un objeto "vista".**
32
32
33
-
Un objeto vista no almacena nada por sí mismo. Son las "gafas" las que dan una interpretación de los bytes almacenados en el `ArrayBuffer`.
33
+
Un objeto vista no almacena nada por sí mismo. Son "gafas" que le dan una interpretación a los bytes almacenados en el `ArrayBuffer`.
34
34
35
35
Por ejemplo:
36
36
@@ -45,7 +45,7 @@ Así, los datos binarios de un `ArrayBuffer` de 16 bytes pueden interpretarse co
45
45
46
46
`ArrayBuffer` es el objeto central, la raíz de todo, los datos binarios en bruto.
47
47
48
-
Pero si vamos a escribir en él o a iterar sobre él básicamente para casi cualquier operación, debemos utilizar una vista, por ejemplo:
48
+
Pero si vamos a escribir en él, o iterar sobre él (básicamente, para casi cualquier operación), debemos utilizar una vista. Por ejemplo:
49
49
50
50
```js run
51
51
let buffer = new ArrayBuffer(16); // crea un búfer de longitud 16
@@ -95,7 +95,7 @@ new TypedArray();
95
95
96
96
Opcionalmente podemos proporcionar `byteOffset` para empezar (0 por defecto) y la `length` (hasta el final del buffer por defecto), entonces la vista cubrirá sólo una parte del `buffer`.
97
97
98
-
2. Si se da un `Array` o cualquier objeto tipo array se crea un array tipado de la misma longitud y se copia el contenido.
98
+
2. Si se da un `Array`, o cualquier objeto tipo array, se crea un array tipado de la misma longitud y se copia el contenido.
99
99
100
100
Podemos usarlo para pre-llenar el array con los datos:
101
101
```js run
@@ -135,7 +135,7 @@ De esta forma siempre podemos pasar de una vista a otra:
135
135
```js
136
136
let arr8 = new Uint8Array([0, 1, 2, 3]);
137
137
138
-
// otro punto de vista sobre los mismos datos
138
+
// otra vista sobre los mismos datos
139
139
let arr16 = new Uint16Array(arr8.buffer);
140
140
```
141
141
@@ -201,7 +201,7 @@ Sin embargo, hay algunas cosas que no podemos hacer:
201
201
Hay dos métodos adicionales:
202
202
203
203
-`arr.set(fromArr, [offset])` copia todos los elementos de `fromArr` al `arr`, empezando en la posición `offset` (0 por defecto).
204
-
-`arr.subarray([begin, end])` crea una nueva vista del mismo tipo desde `begin` hasta `end` (exclusivo). Es similar al método `slice` (que también está soportado), pero no copia nada sólo crea una nueva vista, para operar sobre el trozo de datos dado.
204
+
-`arr.subarray([begin, end])` crea una nueva vista del mismo tipo desde `begin` hasta `end` (excluyéndolo). Es similar al método `slice` (que también está soportado) pero no copia nada, sólo crea una nueva vista para operar sobre el trozo de datos dado.
205
205
206
206
Estos métodos nos permiten copiar arrays tipados, mezclarlos, crear nuevos arrays a partir de los existentes, etc.
0 commit comments