Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تفكيك الـ Tuples (Destructuring)

جزء من قسم Introduction To TypeScript في رحلة JavaScript على Coddy — الدرس 17 من 73.

بينما يعمل الوصول إلى عناصر الـ tuple عن طريق الفهرس (index) بشكل مثالي، هناك طريقة أكثر أناقة لاستخراج القيم من الـ tuples: تفكيك البنية (destructuring). تعمل هذه الميزة في JavaScript بسلاسة مع الـ tuples المحددة النوع في TypeScript، مما يسمح لك بتفريغ قيم الـ tuple في متغيرات منفصلة في سطر واحد.

يستخدم تفكيك المصفوفة (Array destructuring) الأقواس المربعة على الجانب الأيسر من عملية التعيين لإنشاء متغيرات جديدة تتوافق مع كل موضع في الصف (tuple):

let userInfo: [number, string] = [42, "Alice"];
let [id, name] = userInfo;

console.log(id);   // 42 (يعرف TypeScript أن هذا رقم)
console.log(name); // "Alice" (يعرف TypeScript أن هذه سلسلة نصية)
challenge icon

التحدي

سهل

أنشئ tuple باسم employee يحتوي على رقم (معرف الموظف) متبوعاً بسلسلة نصية (اسم الموظف). قم بتهيئته بالمعرف 1001 والاسم "Sarah Johnson".

استخدم التفكيك (destructuring) لاستخراج القيم من الـ tuple المسمى employee إلى متغيرين منفصلين باسم empId و empName.

أنشئ tuple آخر باسم coordinates يحتوي على رقمين يمثلان إحداثيات خط العرض وخط الطول. قم بتهيئته بالقيم 40.7128 و -74.0060.

استخدم التفكيك (destructuring) لاستخراج القيم من الـ tuple المسمى coordinates إلى متغيرين منفصلين باسم latitude و longitude.

اطبع المتغيرات المفككة بالترتيب التالي، كل منها في سطر منفصل:

  • اطبع معرف الموظف
  • اطبع اسم الموظف
  • اطبع خط العرض
  • اطبع خط الطول

جرّب بنفسك

// TODO: اكتب كودك هنا
// أنشئ tuple للموظف بالمعرف 1001 والاسم "Sarah Johnson"
// استخدم destructuring لاستخراج empId و empName
// أنشئ tuple للإحداثيات بالقيم 40.7128 و -74.0060 (تجنب استخدام 'location' كاسم متغير)
// استخدم destructuring لاستخراج latitude و longitude
// اطبع جميع المتغيرات الأربعة بالترتيب المحدد

// اطبع النتائج (قم بإزالة التعليق والتعديل حسب الحاجة)
// console.log(empId);
// console.log(empName);
// console.log(latitude);
// console.log(longitude);
quiz iconاختبر نفسك

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

جميع دروس Introduction To TypeScript