Nuk kërkohet vetëm që një zhvillues të kryejë detyrat, por është gjithashtu e nevojshme të kryejë detyrat në një mënyrë më efikase. Sot ekzistojnë disa biblioteka në JavaScript që e bëjnë më të lehtë punën me variabla për zhvilluesit. Ne do të mësojmë se si të përdorim funksionet më të zakonshme të bibliotekës Lodash në këtë tutorial.
Nëse nuk e keni provuar ende Lodash, tani është momenti. Lodash është një paketë bashkëkohore e shërbimeve JavaScript që thjeshton më lehtë punën me vargje, numra të plotë, objekte, tekste dhe lloje të tjera të dhënash.
Do t'ju ndihmojë në trajtimin e llojeve të ndryshme të objekteve dhe do t'ju kursejë kohë duke eliminuar nevojën për të koduar metoda të përgjithshme. Kodi juaj do të jetë më i pastër me më pak rreshta dhe do të funksionojë në të gjithë shfletuesit. Nëse nuk po e përdorni tashmë, duhet ta konsideroni me kujdes.
Mos miratimi i Lodash është një humbje e madhe për bazat tona të kodeve JavaScript. Është një zgjidhje pa gabime dhe elegante për sfidat e zakonshme që kemi në punë, dhe përdorimi i saj vetëm sa do ta bëjë kodin tonë më të lexueshëm dhe më të menaxhueshëm.
Le të thellohemi në disa nga funksionet më të njohura (ose jo!) Lodash dhe të zbulojmë se sa jashtëzakonisht e dobishme dhe e bukur është kjo bibliotekë.
1. _.i renditurUniq
Të gjitha vlerat e dyfishuara nuk do të kthehen me këtë. Për shkak se është vetëm për grupe të renditura, kjo përdoret kryesisht për arsye shpejtësie. Kjo është e dobishme vetëm nëse keni të bëni me një grup të madh. Nëse dëshironi të përmirësoni shpejtësinë, renditni grupin tuaj dhe përdorni metoda që funksionojnë më mirë me vargje të renditura.
Lodash ka një numër funksionesh të tjera që janë të ngjashme me këtë. Mund të shikoni .sortedIndex, .sortedIndexBy, .sortedIndexOf, .sortedLastIndex, .sortedLastIndexBy, .sortedLastIndexOf, .sortedUniq, .sortedUniqBy, .sortedUniqBy,.
2. _.zvogëloj
_.reduce është e ngjashme me një funksion filtri. I vetmi ndryshim është se ju keni mundësinë e zgjedhjes së formës së objektit të kthyer. Është normale, nëse nuk e kupton atë që po them; ka një shembull për të.
Në thelb, ne kthejmë një objekt të ri që përmban përdorues të klasifikuar sipas moshës, por vetëm për ata të moshës 18 deri në 59 vjeç. Ky funksion ndihmës Lodash është një nga më të përdorurit. Është gjithashtu i përfshirë në ES6. Gjithashtu do të doja të theksoja dy gabime tipike: mos harroni të ktheni rezultatin në përfundim të funksionit dhe të jepni vlerën e paracaktuar për rezultatin si parametër të tretë (këtu).
3. _.merr dhe ._vendos
Për këtë, do t'ju mashtroj disi duke treguar dy funksione që kryejnë pothuajse të njëjtën gjë. _.get kthen një vlerë pronësie nga një objekt, dhe _.set, mirë, e keni marrë me mend, vendosni një pronë me një vlerë. Asgjë unike, përveç që ju mund të hyni në një pronë përmes rrugës së saj.
Le të shohim një shembull.
Nëse shtegu nuk ekziston gjatë thirrjes së _.set, ai do të gjenerohet. Nuk do të ketë më gabime "Nuk mund të caktohen 'artikujt' e vetive të papërcaktuara". Nëse shtegu nuk ekziston, _.get do të kthehet i papërcaktuar në vend të një gabimi. Nëse shtegu zgjidh në të papërcaktuar, mund të jepni gjithashtu një vlerë të paracaktuar (parametri i tretë).
4. _.gjeni
Në vend që të kalojmë nëpër një grup për të gjetur një objekt të vetëm, ne mund të përdorim _.find. Kjo është mirë, por nuk është e vetmja gjë që _.find mund të bëjë. Me një linjë të vetme kodi, ju gjithashtu mund të zbuloni një objekt duke përdorur veti të shumta. Kontrolloje!
5. _.keyBy
Një nga të preferuarat e mia është _.keyBy. Është mjaft e dobishme kur përpiqeni të merrni një objekt me një atribut të caktuar. Supozoni se kemi 100 hyrje në blog dhe duam të kapim atë me ID "34abc". Si do ta bëjmë? Le të shohim se çfarë ndodh! Kjo metodë mund t'ju ndihmojë të organizoni një koleksion objektesh nëse një server e ofron atë si një grup. Një funksion mund të përdoret gjithashtu si argument i dytë.
6. _.për Secilin
Kjo metodë do të përsëritet mbi një grup objektesh një nga një, duke ju lejuar të bëni çfarëdo logjike që dëshironi. Në këtë shembull të parë, unë do të shikoj një listë të objekteve të përdoruesve, duke bashkuar emrat dhe mbiemrat e tyre për të krijuar një pronë të re të quajtur fullName.
secila prej këtyre pranon dy parametra. Vargu mbi të cilin po kalojmë është parametri i parë. Argumenti i dytë është një funksion përsëritës, ku parametri i parë është referenca e artikullit individual dhe i dyti është indeksi aktual i përsëritjes.
7. _.hartë
Harta, si për Secilin, përsëritet nëpër një grup vlerash. Funksioni i hartës, nga ana tjetër, kthen një grup të ri vlerash të ofruara nga funksioni iterate. Ne po përdorim të njëjtin koleksion përdoruesish si në shembullin tonë për Çdo këtu. Ne mund të përdorim _.map për të gjeneruar një variabël të ri që ka një grup të rrafshuar të emrave të plotë të të gjithë përdoruesve.
8. _.ndryshim
Funksioni i ndryshimit do të prodhojë një grup të ri vlerash që ndryshojnë midis grupit të parë dhe të dytë. Është jetike të theksohet se vendndodhjet e argumenteve ndikojnë në rezultatet.
9. _.merr
Funksioni _.get() mund të na ndihmojë në gjetjen e një elementi brenda një objekti. Ne mund të vendosim një vlerë të paracaktuar për funksionin _.get() që të kthehet nëse një element nuk gjendet në shtegun e ofruar. Funksioni _.get() merr tre parametra, i pari prej të cilëve është objekti nga i cili dëshirojmë të marrim një element. Rruga është e dyta. Vlera e tretë është vlera e paracaktuar që duam të kthejmë nëse një element nuk mund të gjendet.
10. _.gjeni
Funksioni _find() mund të duket se është identik me metodën _.get(). Funksioni _.find(), si metoda _.get(), pranon tre parametra. Megjithatë, ndryshe nga metoda _.get(), argumenti i parë mund të jetë një grup ose një objekt. Argumenti i dytë specifikon funksionin që do të thirret në çdo përsëritje. Hyrja e tretë është indeksi i fillimit të koleksionit. Sepse funksioni _.find() përsëritet mbi çdo element në një koleksion.
11. _.grupNga
Krijoni një objekt të emërtuar nga rezultati i një funksioni (ose një emër prone të zgjedhur rastësisht), ku secila vlerë është një grup objektesh me të njëjtin çelës.
12. _.vendos
Metoda _.set() është e kundërta e metodës _.get(). Do të ndryshojë vlerën e një elementi në një shteg të caktuar. Objekti ose grupi është parametri i parë, shtegu është i dyti dhe vlera që dëshironi të vendosni është e treta.
13. _.bashkohen
Funksionon në mënyrë të ngjashme me Object.assign, me përjashtim të rastit kur futet thellë në strukturën bazë për të përditësuar objektet më të thella në vend që t'i zëvendësojë ato.
14. ._deburr
Ky është një shembull mjaft i drejtpërdrejtë. Të gjitha "shënjimet diakritike të kombinuara" hiqen. Kështu "é" bëhet "e". Kur ka ndërkombëtarizim dhe lokalizim, është një praktikë e mirë të fshihet teksti për funksionet e kërkimit.
15. _.debounce
Kjo është një nga strategjitë më efektive të Lodash. Mund të jetë gjithashtu e vështirë për të kuptuar se çfarë bën dhe kur duhet ta përdorni. Metoda _.debounce() kthen një funksion. Funksioni i metodës _.debounce() do të vonojë thirrjen derisa të ketë kaluar një numër i caktuar milisekonda që nga thirrja e fundit e funksionit.
Përfundim
Lodash është një zgjerim i fuqishëm i gjuhës JavaScript. Me përpjekje minimale, mund të ndërtohet një kod i përmbledhur dhe efikas. Lodash është gjithashtu plotësisht modular. Megjithëse disa nga funksionalitetet e tij përfundimisht mund të zhvlerësohen, unë besoj se do të vazhdojë të ofrojë përfitime të shumta për zhvilluesit, duke nxitur gjithashtu evolucionin e gjuhës JS.
Shpresoj që këto pak aftësi të Lodash t'ju ndihmojnë të shihni se sa i fuqishëm mund të jetë Lodash kur punoni me grupe, objekte dhe koleksione. Ju mund të vizitoni Dokumentacioni për të eksploruar një mori opsionesh të tjera që ka për të ofruar.
Lini një Përgjigju