( mt9 | 2020. 01. 05., v – 17:00 )

Ne szívd fel magad ennyire, tényleg leírtad, elsiklottam felette.

Ettől függetlenül tartom magam ahhoz amire ki akartam lyukadni: Jó elszeparálni az adatot és a kódot ami azt kezeli. Mert így az adatok mint konfiguráció könnyebben kezelhető a függvényed mint kód jobban unit tesztelhető. És ez úgy se nehéz, ha komlpex feltételeid vannak, egyszerűen nem string egyezőséget vizsgálsz a tömb elemein, hanem mást. Mondjuk regexet (is) és / vagy lamdbákat hívsz. Nem ördögtől való, így működik az array filter is.  

És persze mondhatod, hogy ez felesleges bonyolítás, de miért is? Egy URL listát, vagy feltétel listát előbb találsz meg egy config fájlban, mint egy script közepén. Így az a lista jobban kezelhető, a kódod pedig unit tesztelhető. Nyilván erre semmi szükség ha csak egy röpke scriptet dobsz össze magadnak. 

A felvetett teljesítménybeli aggályok pedig feleslegesek amíg nem keletkezik ebből tényleges bottleneck, főleg úgy, hogy feláldoznád vele a karbantarthatóságot és tesztelhetőséget.