المصفوفات محددة النوع (Typed Arrays)
جزء من قسم Introduction To TypeScript في رحلة JavaScript على Coddy — الدرس 13 من 73.
تعد المصفوفات المحددة النوع (Typed arrays) واحدة من أقوى ميزات TypeScript لتنظيم وإدارة قيم متعددة مع الحفاظ على أمان النوع (type safety).
في TypeScript، يمكنك تحديد أن المصفوفة يجب أن تحتوي فقط على عناصر من نوع معين باستخدام صيغة Type[]. يضمن ذلك أن كل عنصر في المصفوفة يطابق النوع المتوقع، مما يمنع الأخطاء الشائعة التي تحدث عند خلط أنواع بيانات مختلفة.
let numbers: number[] = [1, 2, 3, 4, 5];
let names: string[] = ["Alice", "Bob", "Charlie"];
let flags: boolean[] = [true, false, true];عندما تقوم بالتصريح عن مصفوفة محددة النوع، يفرض TypeScript أنه يمكن فقط إضافة قيم من النوع المحدد إليها. وهذا يعني أنه لا يمكنك خلط السلاسل النصية مع الأرقام أو الأنواع الأخرى غير المتوافقة عن طريق الخطأ، مما يساعد في اكتشاف الأخطاء أثناء التطوير بدلاً من وقت التشغيل.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
التحدي
سهلأنشئ مصفوفة محددة النوع باسم scores يمكنها فقط الاحتفاظ بالأرقام وقم بتهيئتها بالقيم 85 و 92 و 78.
ثم أنشئ مصفوفة أخرى محددة النوع باسم studentNames يمكنها فقط الاحتفاظ بالسلاسل النصية وقم بتهيئتها بالقيم "Alice" و "Bob" و "Charlie".
وأخيرًا، أنشئ مصفوفة محددة النوع باسم passedExams يمكنها فقط الاحتفاظ بالقيم المنطقية وقم بتهيئتها بـ true و false و true.
اطبع المصفوفات الثلاث جميعها في وحدة التحكم (console) في أسطر منفصلة بالترتيب الذي تم إنشاؤها به.
ورقة مرجعية
تضمن المصفوفات المحددة النوع في TypeScript أن المصفوفات تحتوي فقط على عناصر من نوع معين باستخدام بناء الجملة Type[]:
let numbers: number[] = [1, 2, 3, 4, 5];
let names: string[] = ["Alice", "Bob", "Charlie"];
let flags: boolean[] = [true, false, true];تفرض TypeScript سلامة النوع (type safety) من خلال منعك من خلط الأنواع غير المتوافقة في نفس المصفوفة، مما يساعد في اكتشاف الأخطاء أثناء عملية التطوير.
جرّب بنفسك
// TODO: اكتب كودك هنا
// قم بإنشاء المصفوفات الثلاثة المحددة النوع كما هو موضح في التحدي
// اطبع المصفوفات الثلاثة جميعها في وحدة التحكم (console)يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Introduction To TypeScript
1البداية مع TS
ما هي TypeScript؟لماذا نستخدم TypeScript؟أول كود TypeScript لكعملية الـ Compilation والأخطاءملخص: مقدمة في TS4التعامل مع الدوال
تحديد أنواع المعاملات وقيم الإرجاعتحديد أنواع Arrow Functionsنوع الإرجاع 'void'المعاملات الاختيارية باستخدام '?'القيم الافتراضية للمعاملاتتحديد أنواع Rest Parametersتعريف أنواع الدوالملخص: بناء دوال محددة الأنواع2الأنواع الأساسية
الأنواع الأساسية: str, num, booleanالنوع 'any': مخرج الهروبالنوع 'unknown'التعامل مع 'null' و 'undef'استنتاج الأنواع في التطبيق العمليتوضيحات الأنواع الصريحةمراجعة: تدريب على الأنواع الأساسية5الأنواع: الأسماء المستعارة، الاتحادات والتقاطعات
الأسماء المستعارة للأنواع الأساسية (Primitives)أنواع الاتحاد ('|')التعامل مع أنواع الاتحادالأنواع الحرفية (Literal Types)أنواع التقاطع ('&')دمج الأسماء المستعارة للأنواعملخص: تركيبات الأنواع المتقدمة3هياكل البيانات: المصفوفات و Tuple
المصفوفات محددة النوع (Typed Arrays)معدل 'readonly' للمصفوفاتما هو الـ Tuple؟تعريف والوصول إلى الـ Tuplesتفكيك الـ Tuples (Destructuring)الـ Tuples للقراءة فقط (Readonly)المصفوفات محددة النوع متعددة الأبعاداستخدام Spread Operator مع المصفوفاتملخص: المصفوفات و Tuples6تحديد أنواع الكائنات والواجهات
توصيف أنواع الكائنات المضمنة (Inline)الأسماء المستعارة للأنواع (Type Aliases) للكائناتمقدمة عن الواجهات (Interfaces)الواجهات (Interfaces) مقابل الأسماء المستعارة للأنواع (Type Aliases)الخصائص الاختيارية وخصائص القراءة فقط (Readonly)توسيع الواجهات والأنواعإضافة الدوال (Methods) إلى الواجهاتملخص: تحديد هياكل الكائنات