freeCodeCamp/guide/arabic/certifications/javascript-algorithms-and-d.../functional-programming/understand-functional-progr.../index.md

2.8 KiB

title localeTitle
Understand Functional Programming Terminology فهم البرمجة الوظيفية المصطلحات

فهم البرمجة الوظيفية المصطلحات

طريقة

كما هو الحال في التحدي الأخير ، يجب عليك استدعاء طريقة getTea وتخزينها في متغير. فقط هذه المرة ، لديك متغيرين لتخزين مجموعتين getTea() من البيانات. سترى أن الدالة getTea() هي نفسها كما كانت من قبل ، فقط الآن تأخذ في معلمتين منفصلتين. المعلمة الأولى هي دالة ، لذا سنحتاج إلى المرور في prepareGreenTea() أو الوظيفة prepareBlackTea() ، متبوعة بالمعلمة الثانية numOfCups التي يمكن numOfCups صحيح.

حل

في هذا التمرين ، نقوم بتعيين نتيجة دالة أعلى من الترتيب للمتغيرات. للقيام بذلك ، فإننا نطلق على الدالة وظيفة رد اتصال كمعامل.

ملحوظة:

javascript const basketOne = makeBasket(addFruit, 10)

## حل:

`` `جافا سكريبت

/ **

  • عملية طويلة لتحضير الشاي الأخضر.
  • return {string} كوب من الشاي الأخضر. ** / const preparGreenTea = () => 'greenTea'؛

/ **

  • الحصول على عدد معين من أكواب الشاي.

  • param {function (): string} preparTea نوع وظيفة تحضير الشاي.

  • param {number} numOfCups عدد أكواب الشاي المطلوبة.

  • return {Array } كمية معينة من أكواب الشاي. ** / const getTea = (prepareTea، numOfCups) => { const teaCups = []؛

    لـ (دع الكؤوس = 1 ؛ أكواب <= numOfCups ؛ أكواب + = 1) { const teaCup = prepareTea ()؛ teaCups.push (فنجان)؛ }

    عودة teaCups. }؛

    // أضف رمزك أدناه هذا السطر const tea4GreenTeamFCC = getTea (prepareGreenTea، 27)؛ // :) const tea4BlackTeamFCC = getTea (prepareBlackTea، 13)؛ // :) // أضف رمزك فوق هذا الخط

    console.log ( tea4GreenTeamFCC، tea4BlackTeamFCC )؛

    `` `

شرح الكود:

في الحل أعلاه مررنا في الوظائف prepareGreenTea() و prepareBlackTea() كمعلمات أو وظائف رد اتصال لوظائف getTea() التي تم تعيينها لمتغيرينا tea4BlackTeamFCC و tea4GreenTeamFCC . بهذه الطريقة لا تتغير المتغيرات العالمية ، ولدينا خيار لإضافة عدد غير محدود من الخيارات المختلفة من أساليب prepareTea() لأنه يتم تمرير وظيفة رد الاتصال إلى وظيفة ترتيب أعلى من getTea() .