विकासकर्तालाई कार्यहरू पूरा गर्न मात्र आवश्यक छैन, तर कार्यहरू अझ प्रभावकारी रूपमा गर्न पनि आवश्यक छ। आज JavaScript मा धेरै पुस्तकालयहरू उपलब्ध छन् जसले विकासकर्ताहरूको लागि चरहरूसँग काम गर्न सजिलो बनाउँदछ। हामी यस ट्यूटोरियलमा Lodash पुस्तकालयको सबैभन्दा सामान्य प्रकार्यहरू कसरी प्रयोग गर्ने भनेर सिक्नेछौं।
यदि तपाईंले अहिलेसम्म Lodash प्रयास गर्नुभएको छैन भने, अब यो क्षण हो। Lodash एक समकालीन JavaScript उपयोगिता प्याकेज हो जसले arrays, integers, objects, texts, र अन्य डेटा प्रकारहरु संग काम गर्न को लागी सरल बनाउँछ।
यसले तपाईंलाई विभिन्न प्रकारका वस्तुहरूसँग व्यवहार गर्न मद्दत गर्नेछ र जेनेरिक विधिहरू कोड गर्ने आवश्यकतालाई हटाएर तपाईंको समय बचत गर्नेछ। तपाईंको कोड कम लाइनहरूसँग सफा हुनेछ र सबै ब्राउजरहरूमा काम गर्नेछ। यदि तपाईंले पहिले नै यसलाई प्रयोग गरिरहनुभएको छैन भने, तपाईंले यसलाई ध्यानपूर्वक विचार गर्नुपर्छ।
Lodash लाई अपनाउनु हाम्रो JavaScript कोडबेसहरूको लागि ठूलो नोक्सान हो। यो एक बग-रहित र हामीसँग काममा हुने सामान्य चुनौतीहरूको लागि सुरुचिपूर्ण समाधान हो, र यसको उपयोगले मात्र हाम्रो कोडलाई अझ पढ्न योग्य र व्यवस्थित बनाउनेछ।
केही धेरै लोकप्रिय (वा होइन!) Lodash प्रकार्यहरू खोजौं र यो पुस्तकालय कति धेरै उपयोगी र सुन्दर छ भनेर पत्ता लगाउनुहोस्।
1. _.sortedUniq
सबै डुप्लिकेट मानहरू यससँग फिर्ता गरिने छैन। किनभने यो केवल क्रमबद्ध एरेहरूको लागि हो, यो मुख्य रूपमा गति कारणहरूको लागि प्रयोग गरिन्छ। यो मात्र उपयोगी छ यदि तपाईं ठूलो एरेसँग काम गर्दै हुनुहुन्छ। यदि तपाइँ गति सुधार गर्न चाहनुहुन्छ भने, तपाइँको एरे क्रमबद्ध गर्नुहोस् र क्रमबद्ध एरेहरूसँग राम्रो काम गर्ने विधिहरू प्रयोग गर्नुहोस्।
Lodash सँग मिल्दोजुल्दो अन्य कार्यहरू छन्। तपाईं .sortedIndex, .sortedIndexBy, .sortedIndexOf, .sortedLastIndex, .sortedLastIndexBy, .sortedLastIndexBy, .sortedUniq, .sortedUniqBy, .sortedUniqBy, .sortedUniqBy, .sortedUniqBy, .sortedUniqBy, .sortedUniqBy, .
२. _. घटाउनुहोस्
_.reduce फिल्टर प्रकार्य जस्तै छ। फरक यति मात्र हो कि तपाईसँग फर्काइएको वस्तुको फारम चयन गर्ने विकल्प छ। यो सामान्य छ, यदि तपाईंले मैले के भन्दै छु भनेर बुझ्नुभएको छैन भने; यसको लागि एउटा उदाहरण छ।
संक्षेपमा, हामी उमेर अनुसार वर्गीकृत प्रयोगकर्ताहरू समावेश भएको नयाँ वस्तु फिर्ता गर्छौं, तर 18 देखि 59 वर्षका मानिसहरूका लागि मात्र। यो Lodash सहायक प्रकार्य सबैभन्दा सामान्य रूपमा प्रयोग हुने मध्ये एक हो। यो ES6 मा पनि समावेश छ। म दुई विशिष्ट त्रुटिहरू पनि औंल्याउन चाहन्छु: कार्यको अन्त्यमा नतिजा फर्काउन सम्झनुहोस्, र तेस्रो प्यारामिटर (यहाँ) को रूपमा परिणामको लागि पूर्वनिर्धारित मान आपूर्ति गर्नुहोस्।
3. _.प्राप्त गर्नुहोस् र ._सेट गर्नुहोस्
यसको लागि, म तपाइँलाई केहि हद सम्म चलाउनेछु दुई प्रकार्यहरू देखाएर जुन लगभग एउटै काम गर्दछ। _.get ले वस्तुबाट गुणको मान फर्काउँछ, र _.set, राम्रोसँग, तपाईंले अनुमान गर्नुभयो, मानसहितको गुण सेट गर्नुहोस्। केहि अद्वितीय छैन, बाहेक तपाईले यसको मार्ग मार्फत सम्पत्ती पहुँच गर्न सक्नुहुनेछ।
एउटा उदाहरण हेरौं।
यदि _.set लाई कल गर्दा पथ अवस्थित छैन भने, यो उत्पन्न हुनेछ। त्यहाँ "अपरिभाषित 'वस्तुहरू' को गुण सेट गर्न सकिँदैन" त्रुटिहरू हुनेछैनन्। यदि पथ अवस्थित छैन भने, _.get त्रुटिको सट्टा अपरिभाषित फर्किनेछ। यदि पथले अपरिभाषितमा समाधान गर्छ भने, तपाईंले पूर्वनिर्धारित मान (तेस्रो प्यारामिटर) पनि आपूर्ति गर्न सक्नुहुन्छ।
४. _.फेला पार्नुहोस्
एकल वस्तु फेला पार्न एर्रे मार्फत लुप गर्नुको सट्टा, हामीले _.find प्रयोग गर्न सक्छौं। त्यो राम्रो छ, तर यो मात्र _.find गर्न सक्ने कुरा होइन। कोडको एक पङ्क्तिको साथ, तपाईले धेरै गुणहरू प्रयोग गरेर वस्तु पत्ता लगाउन सक्नुहुन्छ। यसलाई जाँच गर्नुहोस्!
५. _.कुञ्जीद्वारा
मेरो मनपर्ने मध्ये एक _.keyBy हो। एक निश्चित विशेषता संग एक वस्तु प्राप्त गर्न प्रयास गर्दा यो धेरै उपयोगी छ। मान्नुहोस् हामीसँग १०० ब्लग प्रविष्टिहरू छन् र हामी एउटालाई "100abc" आईडीको साथ लिन चाहन्छौं। हामी यसलाई कसरी गर्न जाँदैछौं? हेरौं के हुन्छ! यदि सर्भरले एरेको रूपमा प्रदान गर्दछ भने यो विधिले तपाईंलाई वस्तु सङ्कलन व्यवस्थित गर्न मद्दत गर्न सक्छ। एउटा प्रकार्यलाई दोस्रो तर्कको रूपमा पनि प्रयोग गर्न सकिन्छ।
6. _.प्रत्येकका लागि
यो विधिले वस्तुहरूको एर्रेमा एक-एक गरेर दोहोर्याउनेछ, तपाइँलाई तपाइँले चाहेको तर्क गर्न अनुमति दिनुहुन्छ। यो पहिलो उदाहरणमा, म प्रयोगकर्ता वस्तुहरूको सूचीमा लुप गर्नेछु, तिनीहरूको पहिलो र अन्तिम नामहरू मर्ज गरेर fullName भनिने नयाँ गुण सिर्जना गर्नुहोस्।
यी मध्ये प्रत्येकले दुई प्यारामिटरहरू स्वीकार गर्दछ। हामीले लुप गरिरहेको एरे पहिलो प्यारामिटर हो। दोस्रो तर्क एक पुनरावृत्ति प्रकार्य हो, पहिलो प्यारामिटर व्यक्तिगत वस्तु सन्दर्भ र दोस्रो पुनरावृत्तिको हालको अनुक्रमणिकाको साथ।
7. _.नक्सा
नक्सा, जस्तै forEach, मानहरूको एर्रेमा दोहोर्याउँछ। अर्कोतर्फ नक्सा प्रकार्यले पुनरावृत्ति प्रकार्यद्वारा प्रदान गरिएको मानहरूको नयाँ एरे फर्काउँछ। हामी यहाँ हाम्रो प्रत्येक उदाहरणमा जस्तै प्रयोगकर्ताहरूको समान संग्रह प्रयोग गर्दैछौं। हामी नयाँ चर उत्पन्न गर्न _.map प्रयोग गर्न सक्छौं जसमा सबै प्रयोगकर्ताहरूको पूर्ण नामहरूको समतल एरे छ।
8. _. भिन्नता
फरक प्रकार्यले मानहरूको नयाँ एरे उत्पादन गर्नेछ जुन पहिलो र दोस्रो एरेहरू बीच फरक हुन्छ। तर्कको स्थानले नतिजालाई असर गर्छ भनेर ध्यान दिनु महत्त्वपूर्ण छ।
९. _.प्राप्त गर्नुहोस्
_.get() प्रकार्यले हामीलाई वस्तु भित्र तत्व पत्ता लगाउन मद्दत गर्न सक्छ। यदि आपूर्ति मार्गमा कुनै तत्व फेला परेन भने हामी _.get() प्रकार्यको लागि पूर्वनिर्धारित मान सेट गर्न सक्छौं। _.get() प्रकार्यले तीनवटा प्यारामिटरहरू लिन्छ, जसमध्ये पहिलो वस्तु हो जसबाट हामी एक तत्व प्राप्त गर्न चाहन्छौं। बाटो दोस्रो हो। तेस्रो मान पूर्वनिर्धारित मान हो जुन हामी फिर्ता गर्न चाहन्छौं यदि एक तत्व अवस्थित हुन सक्दैन।
४. _.फेला पार्नुहोस्
_find() प्रकार्य _.get() विधिसँग मिल्दोजुल्दो देखिन सक्छ। _.find() प्रकार्य, जस्तै _.get() विधि, तीन प्यारामिटरहरू स्वीकार गर्दछ। यद्यपि, _.get() विधिको विपरीत, पहिलो तर्क एरे वा वस्तु हुन सक्छ। दोस्रो तर्कले प्रत्येक पुनरावृत्तिमा कल गरिने प्रकार्य निर्दिष्ट गर्दछ। तेस्रो इनपुट संग्रहको सुरुवात सूचकांक हो। किनकी _.find() प्रकार्यले संग्रहमा प्रत्येक तत्वमा दोहोर्याउँछ।
11. _.समूहद्वारा
कार्यको परिणाम (वा अनियमित रूपमा चयन गरिएको गुण नाम) द्वारा नामित वस्तु सिर्जना गर्नुहोस्, प्रत्येक मान एउटै कुञ्जीसँग वस्तुहरूको एर्रे भएको छ।
12. _.सेट
विधि _.set() विधि _.get() को उल्टो छ। यसले दिइएको पथमा तत्वको मान परिवर्तन गर्नेछ। वस्तु वा एरे पहिलो प्यारामिटर हो, पथ दोस्रो हो, र तपाईंले सेट गर्न चाहनुभएको मान तेस्रो हो।
13. _.मर्ज
यसले Object.assign सँग समान रूपमा कार्य गर्दछ, बाहेक यसले गहिरो वस्तुहरूलाई प्रतिस्थापन गर्नुको सट्टा अद्यावधिक गर्न अन्तर्निहित संरचनामा गहिरो दोहोर्याउँछ।
14. _deburr
यो एक बरु सीधा उदाहरण हो। सबै "डायक्रिटिकल चिन्हहरू संयोजन" हटाइएको छ। यसरी "é" "e" बन्छ। जब त्यहाँ अन्तर्राष्ट्रियकरण र स्थानीयकरण हुन्छ, यो खोज प्रकार्यहरूको लागि पाठ deburr गर्न राम्रो अभ्यास हो।
15. _.debounce
यो सबैभन्दा प्रभावकारी Lodash रणनीति मध्ये एक हो। यसले के गर्छ र तपाईले यसलाई कहिले प्रयोग गर्नुपर्छ भनेर बुझ्न पनि गाह्रो हुन सक्छ। _.debounce() विधिले कार्य फर्काउँछ। _.debounce() विधिको प्रकार्यले आह्वानमा ढिलाइ गर्नेछ जबसम्म प्रकार्य पछिल्लो पटक बोलाइएको थियो।
निष्कर्ष
Lodash जाभास्क्रिप्ट भाषा को एक शक्तिशाली विस्तार हो। न्यूनतम प्रयास संग, एक संक्षिप्त र कुशल कोड बनाउन सक्छ। Lodash पनि पूर्ण रूपमा मोड्युलर छ। यद्यपि यसका केही कार्यात्मकताहरू अन्ततः बहिष्कृत हुन सक्छन्, म विश्वास गर्छु कि यसले विकासकर्ताहरूलाई अझै पनि JS भाषाको विकासलाई ड्राइभ गर्दै धेरै फाइदाहरू प्रदान गर्नेछ।
मलाई आशा छ कि यी केही Lodash क्षमताहरूले तपाईंलाई array, वस्तुहरू, र संग्रहहरूसँग काम गर्दा Lodash कति शक्तिशाली हुन सक्छ भनेर हेर्न मद्दत गर्दछ। तपाईं भ्रमण गर्न सक्नुहुन्छ दस्तावेज अन्य विकल्पहरूको प्रशस्तता अन्वेषण गर्न जुन यसले प्रस्ताव गरेको छ।
जवाफ छाड्नुस्