المصفوفات المتناثرة
جزء من قسم المنطق وتدفق التنفيذ في رحلة 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التحدي
سهلأنشئ دالة باسم analyzeSparseArray تأخذ مصفوفة متناثرة كوسيط. يجب أن تُعيد الدالة كائنًا يتضمن الخصائص التالية:
length: الطول الإجمالي للمصفوفةelementCount: عدد العناصر غير الفارغة في المصفوفةlargestGap: حجم أكبر فجوة (خانات فارغة متتالية) في المصفوفة
جرّب بنفسك
function analyzeSparseArray(arr) {
// اكتب الكود الخاص بك هنا
}
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس المنطق وتدفق التنفيذ
1السلاسل النصية بالتفصيل
أساسيات السلاسل النصيةالتكرار على السلاسل النصيةالقوالب النصيةدوال السلاسل النصيةمراجعة - ناسج السلاسل النصية2المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفة ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة: المصفوفات ثنائية الأبعادجمع المصفوفات وطرحهاالمصفوفات متعرجة الأبعادالمصفوفات ثلاثية الأبعاد وما بعدهاأنماط شائعة للمصفوفات ثنائية الأبعادمراجعة: كل ما يتعلق بالمصفوفات5المجموعات - الجزء الأول
ما هي المجموعة؟التكرار على عناصر المجموعةإضافة عنصرإزالة عنصرالتحقق من وجود عنصرالحجم والتحقق من الفراغالنسخ والمسحمراجعة - أساسيات المجموعات8موضوعات شيقة حول المصفوفات
تفكيك المصفوفاتصياغة الانتشار في المصفوفاتالمصفوفات المتناثرةمراجعة - ورشة عمل حول المصفوفات3JSON الجزء 1
ما هو JSON؟التحقق من وجود المفتاحطرق الكائنعامل الانتشار الجزء 1عامل الانتشار الجزء 2حذف المفاتيحمراجعة - معالجة المفاتيح في JSONتدرّب بنفسك: مترجم JavaScript عبر الإنترنت