sequenceEqual
Compara secuencialmente las emisiones de 2 Observables utilizando una función de comparación y retorna un Observable que emite un solo valor booleano indicando si las dos secuencias son o no iguales
Descripción
Ejemplos
import { from, fromEvent } from "rxjs";
import { sequenceEqual, bufferCount, mergeMap, map } from "rxjs/operators";
const codes = from([
"ArrowUp",
"ArrowUp",
"ArrowDown",
"ArrowDown",
"ArrowLeft",
"ArrowRight",
"ArrowLeft",
"ArrowRight",
"KeyB",
"KeyA",
"Enter", // Obviamente, no tenemos la tecla start
]);
const keys = fromEvent(document, "keyup").pipe(map((e) => e.code));
const matches = keys.pipe(
bufferCount(11, 1),
mergeMap((last11) => from(last11).pipe(sequenceEqual(codes)))
);
matches.subscribe((matched) =>
console.log("Successful cheat at Contra? ", matched)
);Recursos adicionales
Last updated