في عالم يفقد السيطرة 🌀 عالم البرمجة لك

borma logo
person




بعد ما فهمنا الـ Basic Types في TypeScript دلوقتي لازم نعرف إزاي نتعامل مع ال Arraysو ال Tuples  لإنهم جزء أساسي في TypeScript.

 

🔹 تعريف Array بالطريقة العادية:

هنا numbers تقدر تحتوي على أرقام بس و names تقدر تحتوي على Strings بس.

🔹 تعريف Array بطريقة الـ Generic:

نفس الفكرة بس بطريقة الـ Generics.

🔹 مصفوفة فيها أكتر من نوع:

هنا المصفوفة بتقبل أرقام أو Strings بس TypeScript بيمنع أي نوع تاني يدخل فيها.

🔹 بعض العمليات على الـ Array:

لو حاولت تضيف نوع مختلف هتاخد Error على طول 👀

📌 Tuples: مصفوفات محددة العدد والنوع:

الـ Tuple زي الـ Array بس الفرق إنها بتحدد عدد العناصر ونوع كل واحد فيهم بدقة.

 

🔹 تعريف Tuple في TypeScript:

  • العنصر الأول String
  • العنصر الثاني Number
  • لو حاولت تضيف عنصر زيادة أو تغير الترتيب TypeScript هيزعلك.. انا حذرتك 😂

🔹 تعديل القيم داخل Tuple:

الـ Tuple ليها عدد ثابت من العناصر ومينفعش تضيف زيادة

🔹 Tuples مع Labels (Destructuring) :

ممكن تضيف Labels عشان تسهل قراءة الكود.

📌 جدول ملخص لأهم الفروقات بين Arrays و Tuples

الجدول Arrays (المصفوفات) Tuples

التعريف

مصفوفة تحتوي على عناصر من نفس النوع (أو أكتر من نوع مع الـ Union). مصفوفة ذات عدد ثابت من العناصر، وكل عنصر له نوع محدد.

تغيير القيم

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

التعامل مع العناصر

يمكن التعامل مع أي عنصر في أي ترتيب. الترتيب مهم، كل عنصر له نوع محدد.

إضافة عناصر جديدة

ممكن تضيف أو تحذف عناصر عادي. لا يمكن إضافة عناصر بعد التعريف الأساسي.

مثال

let arr: number[] = [1, 2, 3]; let tup: [string, number] = [“ايشا”, 25];

 

🎯 تـــاســك عــمــلــي عــلــى ال Arrays و Tuples :

📌 المطلوب منك:

  • إنشاء نظام تسجيل طلاب في كورس معين باستخدام Arrays و Tuples بحيث:
  • كل طالب يكون عبارة عن Tuple تحتوي على:
  • الاسم (String)
  • العمر (Number)
  • هل سجل في الكورس؟ (Boolean)
  • هيتم تخزين جميع الطلاب في Array
  • هتضيف Function لطباعة بيانات كل الطلاب المسجلين في الكورس فقط.

🎯 التحدي الإضافي (Bonus Challenge):

  • ضيف Function جديدة تتيحإضافة طالب جديد إلى المصفوفة باستخدام Tuple.
  • ضيف Function لحذف طالب من المصفوفة.
  • جرب تعديل بيانات أي طالب باستخدام Tuple.

 شاركنا تجربتك… بعد ما تنفذ التاسك شارك الكود في الكومنتات أو جربه بنفسك وشوف هل في أي مشاكل ظهرت معاك؟

قسم التعليقات