1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
{{alias}}( iter0, ...iterator, fcn[, thisArg] )
Returns an iterator which transforms iterated values from two or more
iterators by applying the iterated values as arguments to a provided
function.
When invoked, the callback function is provided `N+1` arguments, where `N`
is the number of provided iterators and the last argument is the iteration
index:
- ...value: iterated values
- index: iteration index (zero-based)
The length of the returned iterator is equal to the length of the shortest
provided iterator. In other words, the returned iterator ends once *one* of
the provided iterators ends.
If an environment supports Symbol.iterator and provided iterators are
iterable, the returned iterator is iterable.
Parameters
----------
iter0: Object
Input iterator.
iterator: ...Object
Iterators.
fcn: Function
Function to invoke with iterated values.
thisArg: any (optional)
Execution context.
Returns
-------
iterator: Object
Iterator.
iterator.next(): Function
Returns an iterator protocol-compliant object containing the next
iterated value (if one exists) and a boolean flag indicating whether the
iterator is finished.
iterator.return( [value] ): Function
Finishes an iterator and returns a provided value.
Examples
--------
> var it1 = {{alias:@stdlib/array/to-iterator}}( [ 1.0, 2.0 ] );
> var it2 = {{alias:@stdlib/array/to-iterator}}( [ 3.0, 4.0 ] );
> function fcn( x, y ) { return x + y; };
> var it = {{alias}}( it1, it2, fcn );
> var v = it.next().value
4.0
> v = it.next().value
6.0
> var bool = it.next().done
true
See Also
--------
|