البرمجة

كيفية البحث والوصول إلى خصائص كائنات JavaScript في مصفوفة

في هذا المشهد البرمجي، نجد نفسنا أمام مصفوفة من الكائنات في جافا سكريبت، حيث يمكننا الوصول إلى خصائص هذه الكائنات باستخدام دالة lookUp. سأشرح لك الخطوات التي يمكن اتباعها للوصول إلى النتائج المطلوبة.

أولاً وقبل البداية في الشرح، يجب أن ندرك أن الكائنات في مصفوفة contacts هي من نوع “contact”، وتحتوي على خصائص مثل “firstName”، “lastName”، “number”، و “likes”.

للوصول إلى الخصائص المطلوبة، يمكننا استخدام دورة تكرار (Loop) على مصفوفة الاتصالات. في حالة البحث عن اسم محدد مثل “Akira”، يمكننا استخدام دورة for للتحقق مما إذا كان الاسم موجودًا في القائمة أم لا. إذا وجد، يمكننا استرجاع الخصائص المرتبطة بهذا الاسم.

في الدالة lookUp، يمكننا استخدام الكود التالي:

javascript
function lookUp(firstName, prop){ for (var i = 0; i < contacts.length; i++) { if (contacts[i].firstName === firstName) { // الآن لدينا الاتصال الذي نبحث عنه if (contacts[i][prop] !== undefined) { // إذا كانت الخاصية المطلوبة موجودة return contacts[i][prop]; } else { // إذا لم تكن الخاصية موجودة return "No such property"; } } } // إذا لم يتم العثور على اسم المستخدم return "No such contact"; }

هذا الكود يقوم بالتحقق مما إذا كان الاسم المطلوب موجودًا في مصفوفة contacts، ثم يتحقق مما إذا كانت الخاصية المحددة (prop) موجودة لهذا الشخص أم لا، ويقوم بإرجاع القيمة المناسبة. إذا لم يتم العثور على اسم المستخدم، يتم إرجاع “No such contact”.

المزيد من المعلومات

بالطبع، دعنا نوسع قليلاً على الكود ونوضح المزيد حول كيف يتم تنفيذ عملية البحث والوصول إلى الخصائص في هذا السياق.

أولًا وقبل البداية في شرح الكود، يجب أن نعلم أن الدالة lookUp تستقبل اثنين من الباراميترات، الأول هو الاسم الأول للشخص الذي نريد البحث عنه، والثاني هو الخاصية التي نريد العثور عليها (مثل “likes” في المثال الذي قدمته).

الدالة تبدأ بفتح دورة تكرار for للتحقق من كل عنصر في مصفوفة contacts. في كل تكرار، يتم التحقق مما إذا كانت قيمة “firstName” للشخص الحالي تطابق الاسم الذي نبحث عنه. إذا كان الاسم موجودًا، فإننا نقوم بالتحقق من وجود الخاصية المطلوبة (prop). إذا كانت الخاصية موجودة، يتم إرجاع قيمتها، وإذا لم تكن موجودة، يتم إرجاع “No such property”.

إذا لم يتم العثور على اسم المستخدم في أي من العناصر، يتم إرجاع “No such contact”.

الكود يعتمد على استخدام الدورة for للتحقق من كل عنصر في المصفوفة، ويستخدم الشرط if للتحقق من تطابق الأسماء والخصائص. يُظهر هذا الكود النهج البرمجي لحل المشكلة وضمان استرجاع النتائج المطلوبة بشكل صحيح وفعّال.

زر الذهاب إلى الأعلى