toArray<T>(): OperatorFunction<T, T[]>
No recibe ningún parámetro.
OperatorFunction<T, T[]>: Un array formado a partir de la secuencia observable.
Emite todos los valores del Observable fuente en un array cuando este se completa.
toArray espera a que el Observable fuente se complete para emitir un array que contiene todas sus emisiones. Si el Observable fuente emite un error, no se emitirá ningún array.
Emitir un array que contenga los números del 1 al 5
import { toArray } from "rxjs/operators";
import { range } from "rxjs";
const number$ = range(1, 5);
number$.pipe(toArray()).subscribe(console.log);
// Salida: [ 1, 2, 3, 4, 5]
Emitir un array que contenga las primeras 4 teclas pulsadas
import { fromEvent } from "rxjs";
import { map, take, toArray } from "rxjs/operators";
const key$ = fromEvent<KeyboardEvent>(document, "keydown");
key$
.pipe(
take(4),
map(({ code }) => code),
toArray()
)
.subscribe(console.log);
// Salida: [ 'KeyR', 'KeyX', 'KeyJ', 'KeyS' ]
import { interval } from "rxjs";
import { toArray, take } from "rxjs/operators";
const source = interval(1000);
const example = source.pipe(take(10), toArray());
const subscribe = example.subscribe((val) => console.log(val));
// Salida: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Documentación oficial en inglés