0.1.1 • Published 1 year ago

fleti v0.1.1

Weekly downloads
-
License
-
Repository
-
Last release
1 year ago

Introduction

This repository had two goals:

  • Check the speed difference in all major browsers of ]for let i, for ... of, filter/forEach/map/reduce using playwright
  • Check if it would be faster to use the same system of callbacks from filter/forEach/map/reduce/ but while using a wrapper around for let i

Benchmark

Dataset: [Math.random() * 100; 10_000_000]

Tries: 10

To avoid as much engine optimization as possible a new dataset is created before each function run (aka try).

All values that you'll find below are in milliseconds

Summary

--

Details

Filter

(x) => x > 50

for let i
chromiumfirefoxwebkit
1868871
29312056
3748754
47411554
5718155
67511854
7918455
87410355
9718155
107811754
Average799956
for of
chromiumfirefoxwebkit
116413362
217015260
310713074
49916573
510413074
610614773
79913774
810215973
910512673
1010014574
Average11614271
chained
chromiumfirefoxwebkit
11808463
216716863
316313262
416615562
516713261
616316962
716613262
816815861
916413462
1016516862
Average16714362
fleti
chromiumfirefoxwebkit
1998260
29620081
310718076
410318166
516418066
610318166
710618166
810418266
910418066
1010418166
Average10917368

Map

(x) => x ** 3

for let i
chromiumfirefoxwebkit
14354943
24384844
34384839
44364836
54374837
64374736
74374736
84384736
94364935
104394935
Average4374838
for of
chromiumfirefoxwebkit
16127746
26158046
34527845
44527945
54487745
64537945
74527645
84517845
94537645
104507845
Average4847845
chained
chromiumfirefoxwebkit
19028368
29518260
39688162
410588263
59048263
69238262
79218262
89228263
99228362
109218262
Average9398263
fleti
chromiumfirefoxwebkit
168211357
268911652
369111249
469011749
569111249
668911749
769211248
868811849
968611249
1069111748
Average68911550

For each

(x) => x + 1

for let i
chromiumfirefoxwebkit
19188
29177
36167
46166
56176
66167
76167
86177
96167
106167
Average6177
for of
chromiumfirefoxwebkit
1232172120
222399102
3235168102
4233100101
5171167103
6170100101
7173165106
817198101
9175165114
1017099100
Average195133105
chained
chromiumfirefoxwebkit
1935426
2955329
3955425
4945523
5935323
6935322
7985323
8995322
9955223
10955223
Average955324
fleti
chromiumfirefoxwebkit
118218436
218312747
319116043
418413440
519119041
618313540
719218940
818612741
918818841
1018412740
Average18615641

Filter > Map

(x) => x > 50 => x ** 3

for let i
chromiumfirefoxwebkit
125013471
22528170
324213467
42408165
524013466
62428065
723913566
82418165
92428066
102408266
Average24310267
for of
chromiumfirefoxwebkit
1405134181
2408131129
3268132283
4264130116
5269131317
6267125317
7266127318
8269126212
9268127121
10266126116
Average295129211
chained
chromiumfirefoxwebkit
160817497
261117497
361517496
461617398
5611175101
6609173101
7615174101
8612174100
9608173101
10614174101
Average61217499
fleti
chromiumfirefoxwebkit
142018078
2458209103
3456206110
446220692
545720791
646120891
745920794
844720791
945820791
1046220792
Average45420493

(x) => x > 50 => x ** Math.random()

for let i
chromiumfirefoxwebkit
1318143101
2336141100
330214198
430414298
5304142100
630714198
730114198
830514298
930414298
1030514298
Average30914299
for of
chromiumfirefoxwebkit
1444193240
2451190185
3340193341
4340191181
5337193369
6339191370
7340191377
8340190272
9341190171
10341189172
Average361191268
chained
chromiumfirefoxwebkit
1641238145
2645237147
3648238139
4646238139
5643248141
6649267139
7647237138
8643239139
9648236141
10648237142
Average646242141
fleti
chromiumfirefoxwebkit
1695272209
2699271202
3702273178
4699272181
5695272183
6694271184
7697271179
8694272177
9694272180
10699272178
Average697272185

Map > Filter > Map

(x) => round(x) => x > 50 => x * 3

for let i
chromiumfirefoxwebkit
128990131
229790129
328290124
428189124
528090122
631389122
728489123
828490122
928497126
1028288127
Average28890125
for of
chromiumfirefoxwebkit
1467153297
2463158198
3317159462
4321159212
5323158310
6320158149
7324159149
8323158148
9321159152
10324158151
Average350158223
chained
chromiumfirefoxwebkit
1592271226
2607315216
3630271220
4602315218
5601270224
6603314226
7599270222
8601313225
9599271223
10599315232
Average603293223
fleti
chromiumfirefoxwebkit
1704267205
2704301245
3704301245
4702301245
5711302247
6715302219
7704302221
8701302219
9701301222
10700301225
Average704298229
0.1.1

1 year ago

0.1.0

1 year ago