intersection
intersection() function
Returns Iterable/AsyncIterable of all elements in the iterable2
contained in the iterable1
.
declare function intersection<T>(iterable1: Iterable<T>, iterable2: Iterable<T>): IterableIterator<T>;
declare function intersection<T>(iterable1: AsyncIterable<T>, iterable2: Iterable<T>): AsyncIterableIterator<T>;
declare function intersection<T>(iterable1: Iterable<T>, iterable2: AsyncIterable<T>): AsyncIterableIterator<T>;
declare function intersection<T>(iterable1: AsyncIterable<T>, iterable2: AsyncIterable<T>): AsyncIterableIterator<T>;
declare function intersection<A extends Iterable<unknown> | AsyncIterable<unknown>, B extends Iterable<unknown> | AsyncIterable<unknown>>(iterable1: A): (iterable2: B) => A extends AsyncIterable<unknown> ? AsyncIterableIterator<IterableInfer<B>> : B extends AsyncIterable<unknown> ? AsyncIterableIterator<IterableInfer<B>> : IterableIterator<IterableInfer<B>>;
Example
const iter = intersection([2, 1], [2, 3, 4]);
iter.next(); // {value: 2, done:false}
iter.next(); // {value: undefined, done: true}