Menu
CoddyTech
flag Ar iconالعربيةdown icon

تعريف أنواع الدوال

جزء من قسم مقدمة إلى TypeScript في رحلة JavaScript على Coddy. الدرس 28 من 73.

تتيح لك TypeScript إنشاء اسم مستعار للنوع (type alias) لتوقيع الدالة، والذي يعمل بمثابة مخطط يجب أن تتطابق معه الدوال.

يُعرّف الاسم المستعار لنوع الدالة (function type alias) شكل الدالة باستخدام الكلمة المفتاحية type. تُظهر الصيغة أنواع المعاملات بين قوسين متبوعة بسهم ونوع القيمة المرجعة:

type MathOperation = (a: number, b: number) => number;

const add: MathOperation = (a, b) => {
  return a + b;
};

const multiply: MathOperation = (a, b) => {
  return a * b;
};

في هذا المثال، MathOperation هو اسم مستعار للنوع (type alias) يصف أي دالة تأخذ رقمين وتُرجع رقماً. كلا من add و multiply يتوافقان مع هذا النوع، مما يضمن الاتساق عبر قاعدة الكود الخاصة بك.

challenge icon

التحدي

سهل

قم بإنشاء اسم مستعار للنوع (type alias) باسم StringProcessor لوظيفة تأخذ معامل string واحدًا وتعيد string.

قم بإنشاء اسم مستعار للنوع باسم NumberCalculator لوظيفة تأخذ معاملين من نوع number وتعيد number.

قم بإنشاء اسم مستعار للنوع باسم BooleanChecker لوظيفة تأخذ معامل string وتعيد boolean.

الآن قم بتنفيذ الوظائف التالية التي تتوافق مع هذه الأسماء المستعارة للأنواع:

  • قم بإنشاء وظيفة باسم toUpperCase من نوع StringProcessor تقوم بتحويل السلسلة النصية المدخلة إلى أحرف كبيرة (uppercase)
  • قم بإنشاء وظيفة باسم addPrefix من نوع StringProcessor تضيف البادئة "Processed: " إلى السلسلة النصية المدخلة
  • قم بإنشاء وظيفة باسم divide من نوع NumberCalculator تقوم بقسمة الرقم الأول على الرقم الثاني
  • قم بإنشاء وظيفة باسم power من نوع NumberCalculator ترفع الرقم الأول إلى أس الرقم الثاني (استخدم Math.pow)
  • قم بإنشاء وظيفة باسم isEmpty من نوع BooleanChecker تعيد true إذا كان طول السلسلة النصية 0، وإلا تعيد false
  • قم بإنشاء وظيفة باسم startsWithA من نوع BooleanChecker تعيد true إذا كانت السلسلة النصية تبدأ بحرف "A" (حساس لحالة الأحرف)، وإلا تعيد false

اختبر وظائفك عن طريق استدعائها بالقيم التالية وطباعة النتائج:

  • استدعِ toUpperCase مع "hello world"
  • استدعِ addPrefix مع "data"
  • استدعِ divide مع 20 و 4
  • استدعِ power مع 3 و 4
  • استدعِ isEmpty مع ""
  • استدعِ startsWithA مع "Apple"

اطبع كل نتيجة في سطر منفصل بالترتيب المحدد أعلاه.

جرّب بنفسك

// TODO: قم بإنشاء أسماء مستعارة للأنواع هنا
// StringProcessor, NumberCalculator, BooleanChecker

// TODO: قم بتنفيذ الدوال هنا
// toUpperCase, addPrefix, divide, power, isEmpty, startsWithA

// TODO: اختبر دوالك واطبع النتائج
// قم باستدعاء كل دالة بالقيم المحددة واطبع النتائج
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس مقدمة إلى TypeScript

تدرّب بنفسك: Playground لـ TypeScript