Existuje nějaká výhoda Array.prototype.includes() oproti Array.prototype.indexOf() v závislosti na prohlížečích (Chrome, Firefox) a pozici položky jehly (na začátku, uprostřed, na konci pole)?
Array.prototype.includes vs. Array.prototype.indexOfNeexistují žádné informace specifické pro prohlížeč, v informacích specifických pro pole není žádná pozice a já se neptám na NaN
hodnotu.
Odpověď
Udělal jsem test pomocí pole s 10 000 číselnými hodnotami, zde jsou výsledky:
Chrome:
- začátek
- zahrnuje (22 043 904 ops/s)
- index Of (136 512 737 ops/s)
- uprostřed
- zahrnuje (8 361 operací/s)
- index Of (31 296 ops/s)
- končí
- zahrnuje (4 018 operací/s)
- index Of (95 221 ops/s)
Firefox:
- začátek
- zahrnuje (34 087 623 ops/s)
- index Of (33 196 839 ops/s)
- uprostřed
- zahrnuje (84 880 ops/s)
- index Of (86 612 ops/s)
- končí
- zahrnuje (25 253 ops/s)
- indexOf (14 994 ops/s)
Takže indexOf()
v Chrome funguje mnohem rychleji než includes()
ve všech pozicích.
Ve Firefoxu obě indexOf()
a includes()
funguje téměř podobně.