freeCodeCamp/guide/arabic/certifications/javascript-algorithms-and-d.../basic-javascript/stand-in-line/index.md

4.8 KiB

title localeTitle
Stand in Line قف على الصف

:triangular_flag_on_post: تذكر استخدام Read-Search-Ask إذا واجهتك مشكلة. حاول إقران البرنامج :busts_in_silhouette: واكتب الكود الخاص بك :pencil:

:checkered_flag: شرح المشكلة:

في علوم الكمبيوتر ، قائمة الانتظار هي بنية بيانات مجردة حيث يتم حفظ العناصر بالترتيب. يمكن إضافة عناصر جديدة في الجزء الخلفي من قائمة الانتظار ويتم أخذ العناصر القديمة من أمام قائمة الانتظار .

اكتب دالة nextInLine والتي تأخذ صفيف ( arr ) ورقم ( item ) كوسيطة. أضف الرقم إلى نهاية الصفيف ، ثم أزل أول عنصر في الصفيف. يجب أن تقوم الدالة nextInLine بإرجاع العنصر الذي تمت إزالته.

  • تغيير الرمز أدناه //Your Code here //Change this line .
  • تأكد من أنك تقوم بتحرير داخل وظيفة nextInLine .
  • استخدم وظيفة مصفوفة تعلمتها لإضافة العنصر إلى نهاية صفيف arr .
  • استخدم وظيفة مصفوفة تعلمتها لإزالة العنصر الأول من صفيف arr .
  • إرجاع العنصر إزالتها.

روابط ذات صلة

:speech_balloon: تلميح: 1

تضيف طريقة push() عنصرًا إلى نهاية صفيف.

حاول أن تحل المشكلة الآن

:speech_balloon: تلميح: 2

تقوم طريقة shift() بإزالة العنصر الأول من المصفوفة. كما تقوم بإرجاع العنصر الذي تمت إزالته.

حاول أن تحل المشكلة الآن

:speech_balloon: تلميح: 3

وظيفة nextInLine يستخدم آر والبند. هذه هي ما ستستخدمه الاختبارات لتمرير عناصر الصفيف التي سيختبرونها. انها تسمح للوظيفة لتكون قابلة لإعادة الاستخدام. لا تجزئ أي من الاختبارات داخل الوظيفة.

حاول أن تحل المشكلة الآن

تنبيه المفسد!

علامة تحذير

الحل في المستقبل!

:beginner: الحل الأساسي للكود:

function nextInLine(arr, item) { // Your code here arr.push(item); var removed = arr.shift(); return removed; // Change this line }

شرح الشفرة:

  • دفع البند في نهاية arr .
  • استدعاء الأسلوب shift() على arr للحصول على العنصر الأول وتخزينها في إزالتها .
  • العودة إزالتها .

مثال تشغيل

  • اختبار nextInLine([2,1]); أشواط.
  • يتم nextInLine الدالة nextInLine . arr يصبح [2]. يصبح البند 1.
  • arr.push(item); يدفع 1 إلى [2]. إذن صار arr الآن [2،1].
  • var removed = arr.shift(); يزيل العنصر الأول. إذن arr هو الآن [1]. تمت إزالة 2 ويتم تخزينها في إزالتها .
  • return removed; 2 يتم إرجاعها.

ملاحظة : أنت لا تحتاج فعليًا إلى إزالة المتغير. يمكن إرجاع العنصر الذي تمت إزالته مباشرةً باستخدام return arr.shift(); .