mapfilterconcatallseqreducezip

Solutions on MaxInterview for mapfilterconcatallseqreducezip by the best coders in the world

showing results for - "mapfilterconcatallseqreducezip"
Juan Martín
04 Aug 2020
1// map()
2
3[1,2,3].map(function(x) { return x + 1 })                       === [2,3,4]
4seq([1,,,2,,,3]).map(function(x) { return x + 1})               === seq([2,,,3,,,4])
5seq([1,,,2,,,3,,,]).map(function(x) { return x + 1 })           === seq([2,,,3,,,4,,,])
6
7// filter()
8
9[1,2,3].filter(function(x) { return x > 1; })                   === [2,3]
10seq([1,,,2,,,3]).filter(function(x) { return x > 1; })          === seq([2,,,3])
11seq([1,,,2,,,3,,,]).filter(function(x) { return x > 1; })       === seq([2,,,3,,,])
12
13// concatAll()
14
15[ [1, 2, 3], [4, 5, 6] ].concatAll()                             === [1,2,3,4,5,6]
16seq([ seq([1,,,2,,,3]),,,seq([4,,,5,,,6]) ]).concatAll()         === seq([1,,,2,,,3,,,4,,,5,,,6])
17
18// If a new sequence arrives before all the items
19// from the previous sequence have arrived, no attempt
20// to retrieve the new sequence's elements is made until
21// the previous sequence has completed. As a result the
22// order of elements in the sequence is preserved.
23seq([
24	seq([1,,,, ,2, ,3])
25	,,,seq([,,4, ,5, ,,6]) ]).
26	concatAll()                                                  === seq([1,,,,,2,,3,,4,,5,,,6])
27
28// Notice that as long as at least one sequence being
29// concatenated is incomplete, the concatenated sequence is also
30// incomplete.
31seq([
32	seq([1,, ,,, ,,,2,,,3])
33	,,,seq([4,,,5,,, ,,, ,,6,,,]) ]).
34	concatAll()                                                  === seq([1,,,,,,,,2,,,3,4,,,5,,,,,,,,6,,,])
35
36// reduce()
37
38[ 1, 2, 3 ].reduce(sumFunction)                                 === [ 6 ]
39seq([ 1,,,2,,,3 ]).reduce(sumFunction)                          === seq([,,,,,,6])
40
41// Reduced sequences do not complete until the
42// sequence does.
43seq([ 1,,,2,,,3,,, ]).reduce(sumFunction)                       === seq([ ,,,,,,,,,])
44
45// zip()
46
47// In both Arrays and Observables, the zipped sequence
48// completes as soon as either the left or right-hand
49// side sequence completes.
50Array.zip([1,2],[3,4,5], sumFunction)                           === [4,6]
51Observable.zip(seq([1,,,2]),seq([3,,,4,,,5]), sumFunction)      === seq([4,,,6])
52
53// take()
54[1,2,3].take(2)                                                 === [1, 2]
55seq([ 1,,,2,,,3 ]).take(2)                                      === seq([ 1,,,2 ])
56seq([ 1,,,2,,,3,,, ]).take(2)                                   === seq([ 1,,,2 ])
57
58// takeUntil()
59
60// takeUntil works for Arrays, but it's not very useful
61// because the result will always be an empty array.
62[1,2,3].takeUntil([1])                                          === []
63
64seq([1,,,2,,,3,,, ]).takeUntil(
65seq([ ,,, ,,4 , ]))                                             === seq([ 1,,,2 ])
66
67			
similar questions
queries leading to this page
mapfilterconcatallseqreducezip