slice
Devuelve los valores entre el índice start (incluido) y end (excluido).
Lección
slice es una ventana de índices genérica: emite los elementos
cuya posición cae en [start, end), y omitir end
significa «hasta el final de la fuente». Es un único operador que engloba a
la vez a drop (mediante start) y a
take (mediante end).
Ojo con el orden de los argumentos en la forma data-first: a diferencia de
la mayoría de funciones de FxDart, el iterable va en
medio: slice(start, iterable, [end]),
igual que en FxTS. La forma encadenada no tiene esta rareza, porque el
iterable es el receptor: fx(iterable).slice(start, end). Por
dentro, slice se limita a recorrer la fuente una vez contando
índices, así que sigue siendo perezoso y funciona sin problema sobre una
fuente infinita mientras le des un end.
Demo 1 · Fundamentos & orden de los argumentos
Demo 2 · Asíncrono
Pruébalo tú
Ejercicio: usa slice para quedarte con la ventana desde el
índice 2 hasta el índice 5 (sin incluirlo).