Mhux biss meħtieġ għal żviluppatur li jlesti l-kompiti, iżda huwa wkoll meħtieġ li jagħmel il-kompiti b'mod aktar effiċjenti. Hemm bosta libreriji disponibbli f'JavaScript illum li jagħmlu l-ħidma mal-varjabbli aktar faċli għall-iżviluppaturi. Se nitgħallmu kif nużaw l-aktar funzjonijiet komuni tal-librerija Lodash f'dan it-tutorja.
Jekk għadek ma ppruvajtx Lodash, issa huwa l-mument. Lodash huwa pakkett ta 'utilità JavaScript kontemporanju li jissimplifika l-ħidma ma' arrays, interi, oġġetti, testi, u tipi oħra ta 'dejta aktar faċli.
Dan jgħinek biex tittratta diversi tipi ta 'oġġetti u se tiffranka l-ħin billi telimina l-ħtieġa li tikkodifika metodi ġeneriċi. Il-kodiċi tiegħek se jkun aktar nadif b'inqas linji u se jiffunzjona fil-browsers kollha. Jekk m'intix diġà qed tużah, għandek tqisha bir-reqqa.
Li ma tadottax Lodash hija telf kbir għall-kodiċijiet JavaScript tagħna. Hija soluzzjoni mingħajr bug u eleganti għall-isfidi komuni li għandna fuq ix-xogħol, u l-użu tagħha se jagħmel il-kodiċi tagħna aktar leġibbli u maniġġabbli biss.
Ejja nidħlu f'xi wħud mill-funzjonijiet ta' Lodash l-aktar popolari (jew le!) u niskopru kemm hija utli ħafna u sabiħa din il-librerija.
1. _.sortedUniq
Il-valuri duplikati kollha mhux se jintbagħtu lura ma' dan. Minħabba li huwa biss għal arrays magħżula, dan huwa prinċipalment utilizzat għal raġunijiet ta 'veloċità. Dan huwa utli biss jekk qed tittratta ma 'firxa kbira. Jekk tixtieq ittejjeb il-veloċità, issortja l-array tiegħek u uża metodi li joperaw aħjar b'arrays magħżula.
Lodash għandu numru ta 'funzjonijiet oħra li huma simili għal dan. Tista' tħares lejn .sortedIndex, .sortedIndexBy, .sortedIndexOf, .sortedLastIndex, .sortedLastIndexBy, .sortedLastIndexOf, .sortedUniq, .sortedUniqBy, .sortedUniqBy, .sortedUniqBy, .ysortedUniqBy, .
2. _.naqqas
_.reduce huwa simili għal funzjoni ta 'filtru. L-unika differenza hija li għandek l-għażla li tagħżel il-forma tal-oġġett ritornat. Huwa normali, jekk ma tifhimx dak li qed ngħid; hemm eżempju għalih.
Essenzjalment, aħna nirritornaw oġġett ġdid li fih utenti klassifikati skont l-età, iżda biss għal dawk li għandhom bejn 18 u 59 sena. Din il-funzjoni ta 'helper ta' Lodash hija waħda mill-aktar użati komunement. Huwa inkluż ukoll fl-ES6. Nixtieq ukoll nirrimarka żewġ blunders tipiċi: ftakar li tirritorna r-riżultat fil-konklużjoni tal-funzjoni, u tipprovdi l-valur default għar-riżultat bħala t-tielet parametru (hawn).
3. _.get u ._sett
Għal dan wieħed, ser inqarraqlek kemmxejn billi nuri żewġ funzjonijiet li jwettqu kważi l-istess ħaġa. _.get jirritorna valur ta 'proprjetà minn oġġett, u _.sett, ukoll, inti guessed, issettja proprjetà b'valur. Xejn uniku, ħlief li tista’ taċċessa proprjetà permezz tal-mogħdija tagħha.
Ejja nħarsu lejn eżempju.
Jekk il-mogħdija ma teżistix waqt li ssejjaħ _.set, tiġi ġġenerata. Mhux se jkun hemm aktar żbalji "Ma tistax tissettja 'oġġetti' ta' proprjetà ta' mhux definiti". Jekk il-mogħdija ma teżistix, _.get jirritorna mhux definit minflok żball. Jekk il-mogħdija tissolva għal mhux definita, tista' wkoll tipprovdi valur default (it-tielet parametru).
4. _.sibu
Minflok looping permezz ta 'firxa biex issib oġġett wieħed, nistgħu nużaw _.find. Dak tajjeb, imma mhix l-unika ħaġa li tista’ tagħmel _.find. B'linja waħda ta 'kodiċi, tista' wkoll tiskopri oġġett billi tuża bosta proprjetajiet. Iċċekkjah!
5. _.keyBy
Wieħed mill-favoriti tiegħi huwa _.keyBy. Huwa pjuttost utli meta tipprova tikseb oġġett b'ċertu attribut. Assumi li għandna 100 entrata fil-blog u rridu naqbdu dik bl-id "34abc." Kif se nagħmluh? Ejja naraw x'jiġri! Dan il-metodu jista 'jgħinek tirranġa ġbir ta' oġġetti jekk server jipprovdiha bħala firxa. Funzjoni tista' tintuża wkoll bħala t-tieni argument.
6. _.għalKull
Dan il-metodu se jtenni fuq firxa ta 'oġġetti wieħed wieħed, li jippermettilek tagħmel kwalunkwe loġika li trid. F'dan l-ewwel eżempju, se ngħaddi lista ta 'oġġetti ta' l-utent, u ngħaqqad l-isem u l-kunjom tagħhom biex toħloq proprjetà ġdida msejħa FullName.
għalKull minn dawn jaċċetta żewġ parametri. L-array li qed niċċekkjaw hija l-ewwel parametru. It-tieni argument huwa funzjoni iterata, bl-ewwel parametru jkun ir-referenza tal-oġġett individwali u t-tieni jkun l-indiċi kurrenti tal-iterazzjoni.
7. _.mappa
Il-mappa, bħal forEach, itenni fuq firxa ta' valuri. Il-funzjoni tal-mappa, min-naħa l-oħra, tirritorna firxa ġdida ta 'valuri pprovduti mill-funzjoni iterata. Aħna qed nużaw l-istess ġabra ta 'utenti bħal fl-eżempju tagħna għal Kull hawn. Nistgħu nużaw _.map biex niġġeneraw varjabbli ġdida li għandha firxa ċċattjata tal-ismijiet kompluti tal-utenti kollha.
8. _.differenza
Il-funzjoni tad-differenza se tipproduċi firxa ġdida ta 'valuri li huma differenti bejn l-ewwel u t-tieni matriċi. Huwa vitali li wieħed jinnota li l-postijiet tal-argumenti jaffettwaw ir-riżultati.
9. _.ikseb
Il-funzjoni _.get() tista' tgħinna biex insibu element fi ħdan oġġett. Nistgħu nissettjaw valur default għall-funzjoni _.get() biex tirritorna jekk element ma jinstabx fil-mogħdija fornita. Il-funzjoni _.get() tieħu tliet parametri, l-ewwel wieħed minnhom huwa l-oġġett li minnu nixtiequ niksbu element. It-triq hija t-tieni. It-tielet valur huwa l-valur default li rridu nirritornaw jekk element ma jistax jinstab.
10. _.sibu
Il-funzjoni _find() tista' tidher li hija identika għall-metodu _.get(). Il-funzjoni _.find(), bħall-metodu _.get(), taċċetta tliet parametri. Madankollu, b'differenza mill-metodu _.get(), l-ewwel argument jista 'jkun firxa jew oġġett. It-tieni argument jispeċifika l-funzjoni li se tissejjaħ fuq kull iterazzjoni. It-tielet input huwa l-indiċi tal-bidu tal-kollezzjoni. Minħabba li l-funzjoni _.find() itenni fuq kull element f'kollezzjoni.
11. _.groupBy
Oħloq oġġett imsemmi mir-riżultat ta 'funzjoni (jew isem ta' proprjetà magħżula bl-addoċċ), b'kull valur ikun firxa ta 'oġġetti bl-istess ċavetta.
12. _.sett
Il-metodu _.set() huwa l-invers tal-metodu _.get(). Se tbiddel il-valur ta' element f'mogħdija partikolari. L-oġġett jew l-array huwa l-ewwel parametru, il-mogħdija hija t-tieni, u l-valur li trid tissettja huwa t-tielet.
13. _.għaqda
Dan jiffunzjona b'mod simili għal Object.assign, ħlief li jirrikorri fil-fond fl-istruttura sottostanti biex taġġorna l-oġġetti aktar profondi aktar milli tissostitwixxihom.
14. ._deburr
Dan huwa eżempju pjuttost sempliċi. Il-“marki dijakritiċi li jgħaqqdu” kollha jitneħħew. Għalhekk “é” isir “e”. Meta jkun hemm internazzjonalizzazzjoni u lokalizzazzjoni, hija prattika tajba li tneħħi t-test għall-funzjonijiet ta 'tfittxija.
15. _.debounce
Din hija waħda mill-aktar strateġiji effettivi ta 'Lodash. Jista 'jkun diffiċli wkoll li tifhem x'tagħmel u meta għandek tużah. Il-metodu _.debounce() jirritorna funzjoni. Il-funzjoni tal-metodu _.debounce() se tittardja l-invokazzjoni sakemm jgħaddu numru speċifikat ta' millisekondi minn meta l-funzjoni ġiet invokata l-aħħar.
konklużjoni
Lodash hija estensjoni qawwija tal-lingwa JavaScript. Bi sforz minimu, wieħed jista 'jibni kodiċi konċiż u effiċjenti. Lodash huwa wkoll kompletament modulari. Għalkemm xi wħud mill-funzjonalitajiet tagħha jistgħu fl-aħħar mill-aħħar ikunu deprecati, nemmen li xorta se tipprovdi bosta benefiċċji lill-iżviluppaturi filwaqt li tmexxi wkoll l-evoluzzjoni tal-lingwa JS.
Nittama li dawn il-ftit kapaċitajiet ta 'Lodash jgħinuk tara kemm jista' jkun qawwi Lodash meta taħdem ma 'arrays, oġġetti, u kollezzjonijiet. Tista' żżur il- dokumentazzjoni biex tesplora għadd kbir ta’ għażliet oħra li għandha x’toffri.
Ħalli Irrispondi