المصفوفات ثلاثية الأبعاد وما بعدها
جزء من قسم Logic & Flow في رحلة JavaScript على Coddy — الدرس 12 من 65.
يمكن تصور المصفوفة ثلاثية الأبعاد كمصفوفة من المصفوفات ثنائية الأبعاد. على سبيل المثال، فكر في عدة مبانٍ، كل منها يحتوي على عدة طوابق، وكل طابق يحتوي على عدة غرف. يتم الوصول إلى عنصر باستخدام ثلاثة فهارس: الأول للمبنى، والثاني للطابق، والثالث للغرفة.
على سبيل المثال:
const buildings = [
[
["R1", "R2"],
["R3", "R4"]
],
[
["R5", "R6"],
["R7", "R8"]
]
];
// buildings[0][1][1] -> "R4"
// buildings[1][0][0] -> "R5"يوسع هذا الهيكل مفهوم ثنائي الأبعاد (2D) بمستوى واحد أعمق، مما يجعله عملياً للسيناريوهات التي تتضمن طبقات متعددة من البيانات.
التحدي
سهلأنشئ دالة باسم countAllStrings تستقبل مصفوفة ثلاثية الأبعاد من السلاسل النصية وتعيد العدد الإجمالي للعناصر عبر جميع الأبعاد.
ورقة مرجعية
المصفوفة ثلاثية الأبعاد (3D array) هي مصفوفة من المصفوفات ثنائية الأبعاد. يتم الوصول إلى العناصر باستخدام ثلاثة فهارس: [building][floor][room].
const buildings = [
[
["R1", "R2"],
["R3", "R4"]
],
[
["R5", "R6"],
["R7", "R8"]
]
];
// الوصول إلى العناصر
buildings[0][1][1] // "R4"
buildings[1][0][0] // "R5"جرّب بنفسك
function countAllStrings(arr3D) {
// TODO: احسب العدد الإجمالي لعناصر النصوص في المصفوفة ثلاثية الأبعاد
}
// لا تكتب أي شيء خارج الدالةيتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Logic & Flow
1السلاسل النصية بعمق
أساسيات السلاسل النصيةالتكرار عبر السلاسل النصيةTemplate Literalsدوال السلاسل النصيةمراجعة - String Weaver2المصفوفات متعددة الأبعاد
أساسيات المصفوفات ثنائية الأبعادالوصول إلى عناصر المصفوفات ثنائية الأبعادالحلقات المتداخلة مع المصفوفات ثنائية الأبعادمراجعة - المصفوفات ثنائية الأبعادجمع وطرح المصفوفاتالمصفوفات المتعرجة (Jagged Arrays)المصفوفات ثلاثية الأبعاد وما بعدهاأنماط المصفوفات ثنائية الأبعاد الشائعةمراجعة - كل شيء عن المصفوفات5المجموعات - الجزء الأول
ما هي المجموعة؟التكرار عبر المجموعاتإضافة عنصرإزالة عنصرالتحقق من وجود عنصرالحجم وهل هي فارغةالنسخ والمسحملخص - أساسيات المجموعات8مواضيع شيقة حول الـ Arrays
تفكيك الـ Arrayاستخدام الـ Spread Syntax في الـ Arraysالـ Sparse Arraysمراجعة - ورشة عمل الـ Arrays3JSON الجزء الأول
ما هو JSON؟التحقق من وجود المفتاحObject MethodsSpread Operator الجزء الأولSpread Operator الجزء الثانيحذف المفاتيحمراجعة - معالجة مفاتيح JSON