Lodash هي مكتبة JavaScript تقدم وظائف مفيدة لمهام البرمجة النموذجية باستخدام نموذج البرمجة الوظيفي.
يمكن للمكتبة ، التي تعمل مع متصفحات الويب و Node.js ، تعديل البيانات وتحويلها وإجراء عمليات غير متزامنة والمزيد.
تعرف على كيفية استخدام لوداش لمعالجة المصفوفات والسلاسل والكائنات واكتشف ميزاتها المتقدمة مثل تكوين الوظيفة.
الشروع في العمل مع Lodash
يمكنك إضافة لوداش إلى تطبيقك بإحدى طريقتين: استخدام شبكة توصيل المحتوى (CDN) أو تثبيته باستخدام npm أو الغزل.
لاستخدام Lodash مباشرة في المستعرض ، انسخ رابط Lodash CDN أدناه وأدخله في قسم الرأس في ملف HTML الخاص بك:
<النصيsrc=" https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js"
اكتب = "text / javascript">النصي>
باستخدام هذا الأسلوب ، يمكنك تشغيل نصوص برمجية باستخدام "لوداش" في نص HTML الخاص بك.
لاستخدام Lodash في مشروع Node.js ، يجب عليك تثبيته في دليل المشروع. يمكنك استخدام إما npm أو الغزل للقيام بذلك:
تثبيت npm - حفظ لوداش
# أو
يضيف الغزل اللوداش
يمكنك الآن استخدام Lodash عن طريق طلبها في ملف JavaScript الخاص بك:
// طلب مكتبة اللوداش
مقدار ثابت _ = يتطلب("لوداش");
// باستخدام طريقة _.sum
مقدار ثابت أرقام = [10, 20, 30, 40, 50];
مقدار ثابت sum = _.sum (أرقام) ؛
وحدة التحكم.log (المجموع) ؛
لتشغيل ملف JavaScript الخاص بك ، أدخل أمر العقدة:
العقدة [اسم البرنامج النصي الخاص بك]
التلاعب بالصفيف في لوداش
يأتي Lodash مع مجموعة من الطرق لمعالجة المصفوفات التي توفر وظائف تتجاوز فئة الصفيف المضمنة في JavaScript.
.قطعة
تقسم هذه الطريقة المصفوفة إلى مجموعات من المصفوفات الأصغر ذات الحجم المحدد. قد تكون القطعة النهائية أصغر من الحجم الذي تطلبه.
هذا مثال:
مقدار ثابت مجموعة = [ 'أ', 'ب', "ج", 'د', "ه", 'F', "ز" ];
مقدار ثابت newArray = _.chunk (مجموعة ، 2)
وحدة التحكم.log (newArray)
// انتاج:
// [['a'، 'b']، ['c'، 'd']، ['e'، 'f']، ['g']]
.concat
تنشئ هذه الطريقة مصفوفة جديدة عن طريق ربط القيم بنهاية مصفوفة موجودة.
على سبيل المثال:
مقدار ثابتمجموعة مصفوفة = [ 1, 2, 'أ' ];
مقدار ثابت newArray = _.concat (مجموعة مصفوفة, 5, 'ب', [ 8 ], [ [ 9 ] ]);
وحدة التحكم.log (newArray) ؛
// انتاج:
// [1، 2، 'a'، 5، 'b'، 8، [9]]
.ينضم
تعيد هذه الطريقة سلسلة من خلال دمج عناصر مصفوفة. يقوم بربطهم باستخدام محدد تقوم بتمريره كمعامل عند استدعاء الطريقة. المحدد الافتراضي الذي يستخدمه هو الفاصلة:
مقدار ثابتمجموعة مصفوفة = [ "ل", "س", "د", "أ", "س", "ح" ];
مقدار ثابت newArray = _.join (مجموعة مصفوفة);
وحدة التحكم.log (newArray) ؛// انتاج:
// l، o، d، a، s، hمقدار ثابت newArray = _.join (مجموعة مصفوفة, "-");
وحدة التحكم.log (newArray) ؛
// انتاج:
// l-o-د-أ-س-ح
التلاعب بالسلسلة في لوداش
باستخدام JavaScript ، تنسيق السلسلة عملية بسيطة. لكن اللوداش يجعل الأمر أسهل.
تتضمن بعض عمليات معالجة السلاسل الأكثر شيوعًا التي يمكنك إجراؤها باستخدام لوداش ما يلي:
.startsWith و. endWith
تتحقق هاتان الطريقتان مما إذا كانت السلسلة تبدأ أو تنتهي بسلسلة فرعية ، على التوالي. كلا الطريقتين ترجع قيمة منطقية من صواب أو خطأ.
على سبيل المثال:
مقدار ثابت سلسلة = "لوداش";
وحدة التحكم.log (_.startsWith (سلسلة ، "ل"));
// الإخراج: صحيحوحدة التحكم.log (_.startsWith (سلسلة ، "س"));
// الإخراج: خطأوحدة التحكم.log (_.endsWith (سلسلة ، "م"));
// الإخراج: خطأ
وحدة التحكم.log (_.endsWith (سلسلة ، "ح"));
// الإخراج: صحيح
.يكرر
تقوم هذه الطريقة بطباعة سلسلة بشكل متكرر لعدد محدد من المرات. تأخذ السلسلة باعتبارها الوسيطة الأولى لها وعدد التكرارات على أنها الثانية:
مقدار ثابت سلسلة = "لوداش"
مقدار ثابت newString = _.repeat (سلسلة ، 3);
وحدة التحكم.log (newString) ؛
// الإخراج: Lodashlodashlodash
.تقليم
تزيل هذه الطريقة المسافات البيضاء الأمامية والخلفية. يمكنك أيضًا استخدامه لإزالة أي أحرف محددة في بداية السلسلة ونهايتها.
على سبيل المثال:
// إزالة المسافة البيضاء السابقة واللاحقة
مقدار ثابت سلسلة = " حاجِز "
مقدار ثابت newString = _.trim (سلسلة نصية)
وحدة التحكم.log (newString) ؛
// الإخراج: شريط
// إزالة الأحرف المحددة
مقدار ثابت سلسلة = "،حاجِز،"
مقدار ثابت newString = _.trim (سلسلة ، ",")
وحدة التحكم.log (newString) ؛
// الإخراج: شريط
التلاعب بالأشياء في لوداش
فيما يلي بعض الأمثلة على التلاعب بالسلسلة التي يمكنك إجراؤها باستخدام لوداش:
.دمج
ال _.دمج() طريقة إنشاء كائن جديد من خلال الجمع بين خصائص الكائنات المدخلة. ستحل قيمة الخاصية من الكائن الأحدث محل القيمة من الكائن السابق إذا كانت الخاصية موجودة في أكثر من كائن واحد.
على سبيل المثال:
مقدار ثابت كتب = {
'الرياضيات': 4,
'علوم': 7
};
مقدار ثابت ملاحظات = {
'علوم': 3,
'كيمياء': 5
};_.دمج(الكتب, ملحوظات);
وحدة التحكم.log (كتب) ؛
// انتاج:
// {Mathematics: 4، Science: 3، Chemistry: 5}
في هذا المثال ، تضيف الطريقة خاصية "الكيمياء" من الكائن الثاني وتستبدل قيمة خاصية "Science" للكائن الأول.
.لديه
هذه الطريقة ترجع صحيحًا إذا كانت هناك سلسلة معينة من الخصائص موجودة في كائن وخطأ في الحالات الأخرى.
على سبيل المثال:
مقدار ثابت كتب = {
'الرياضيات': 4,
'علوم': 7
};
وحدة التحكم.log (_.has (كتب ، "الرياضيات"));
// الإخراج: صحيح
.omit
تقوم هذه الطريقة بإرجاع كائن جديد عن طريق إزالة الخصائص المحددة من الخاصية المحددة.
على سبيل المثال:
فار كتب = {
'الرياضيات': 4,
'علوم': 3,
'كيمياء': 5
};
وحدة التحكم.log (_.omit (كتب ، "علوم"));
// المخرجات: {Mathematics: 4، Chemistry: 5}
تكوين الوظيفة في لوداش
تكوين الوظيفة هي تقنية يمكنك استخدامها لغة برمجة وظيفية. يتضمن دمج وظيفتين أو أكثر في وظيفة جديدة عن طريق استدعاء كل وظيفة بترتيب معين. تتيح لك هذه الميزة إنشاء منطق أكثر تعقيدًا من وظائف أبسط.
لتطبيق هذه التقنية ، يأتي اللوداش مع _.تدفق و _. التدفق لليمين المهام. ال _.تدفق() تقبل الدالة قائمة من الدوال كوسائط وتخرج دالة جديدة تطبق الوظائف بنفس الترتيب الذي تمررها به. ال _.flowRight () تقوم الوظيفة بنفس الشيء ، لكنها تستدعي الوظائف في الاتجاه المعاكس.
على سبيل المثال:
وظيفةaddFive(رقم) {
يعود رقم + 5
}وظيفةمرات(رقم) {
يعود رقم * 2
}مقدار ثابت addFiveAndTimesTwo = _.flow ([addFive، timesTwo]) ،
مقدار ثابت addFiveAndTimesTwoReverse = _.flowRight ([addFive، timesTwo]) ،
وحدة التحكم.log (addFiveAndTimesTwo (3));
// الإخراج: 16
وحدة التحكم.log (addFiveAndTimesTwoReverse (3));
// الإخراج: 11
يحدد الكود أعلاه الوظائف addFive و مرات. ترجع الدالة addFive نتيجة إضافة 5 إلى رقم معين. تضرب الدالة timesTwo رقم إدخال في 2 وتُرجع النتيجة.
يستخدم الرمز بعد ذلك الامتداد _.تدفق() تعمل على الجمع بين الاثنين الآخرين وإنتاج الوظيفة الجديدة ، addFiveAndTimesTwo. ستقوم هذه الوظيفة الجديدة أولاً بتنفيذ عملية addFive على الوسيطة الخاصة بها قبل إجراء عمليتي timesTwo على النتيجة النهائية.
ال _.flowRight () تُنتج الدالة وظيفة جديدة تقوم بنفس طريقة التدفق ، ولكن في الاتجاه المعاكس.
أخيرًا ، يستدعي هذا الرمز الوظيفتين الجديدتين ، تمرير 3، كوسيطة ، ويسجل النتائج إلى وحدة التحكم.
فوائد العمل مع Lodash
يمكنك استخدام "لوداش" لتبسيط الكود الخاص بك وجعل مشاريعك أكثر مرونة وقابلية للصيانة. سيساعدك النطاق الواسع من وظائف المرافق والاعتماد الواسع والتحديثات المنتظمة على كتابة تعليمات برمجية أنيقة وفعالة. يمكنك استخدام لوداش لضمان أن الكود الخاص بك دائمًا محدث ومتوافق مع المتصفحات المعاصرة.