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

الـ Sparse Arrays

جزء من قسم المنطق وتدفق التنفيذ في رحلة JavaScript على Coddy. الدرس 49 من 65.

المصفوفة المتناثرة في JavaScript هي مصفوفة تحتوي على خانات فارغة أو فجوات بين عناصرها. تُنشأ هذه الفجوات عند إسناد قيم إلى فهارس غير متتالية أو عند حذف عناصر من مصفوفة.

إليك مثالًا على إنشاء مصفوفة متفرقة:

let sparseArray = [1, , , 4, 5];
console.log(sparseArray.length); // 5
console.log(sparseArray); // [1, empty × 2, 4, 5]

يمكنك أيضًا إنشاء مصفوفات متفرقة من خلال التعيين إلى فهرس يتجاوز الطول الحالي:

let arr = [1, 2, 3];
arr[10] = 10;
console.log(arr); // [1, 2, 3, empty × 7, 10]
console.log(arr.length); // 11

الخانة الفارغة ليست مماثلة لخانة تحتوي على undefined، وقراءة arr[i] تعطي undefined في كلتا الحالتين. للتمييز بينهما، تحقّق مما إذا كان الفهرس موجودًا باستخدام عامل التشغيل in:

let sparseArray = [1, , , 4, 5];
console.log(1 in sparseArray); // false، الفتحة 1 فارغة
console.log(0 in sparseArray); // true، الفتحة 0 تحتوي على 1
challenge icon

التحدي

سهل

أنشئ دالة تُسمّى analyzeSparseArray وتأخذ مصفوفة متفرقة كوسيط. يجب أن تُرجع الدالة كائنًا بالخصائص التالية:

  1. length: الطول الإجمالي للمصفوفة
  2. elementCount: عدد العناصر غير الفارغة في المصفوفة
  3. largestGap: حجم أكبر فجوة (خانات فارغة متتالية) في المصفوفة

جرّب بنفسك

function analyzeSparseArray(arr) {
  // اكتب الكود الخاص بك هنا
}
quiz iconاختبر نفسك

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

جميع دروس المنطق وتدفق التنفيذ

تدرّب بنفسك: مترجم JavaScript عبر الإنترنت