 تذكر استخدام **`Read-Search-Ask`** إذا واجهتك مشكلة. حاول إقران البرنامج  واكتب الكود الخاص بك 
###  شرح المشكلة:
في هذه المشكلة ، يتعين عليك مقارنة المخزون الذي تم تخزينه في صفيف ثنائي الأبعاد وتحديثه مقابل مصفوفة ثنائية الأبعاد ثانية من التسليم الجديد. قم بتحديث كميات بند المخزون الحالية الموجودة (في `arr1` ). إذا تعذر العثور على عنصر ، فأضف العنصر والكمية الجديدة إلى مصفوفة المخزون. يجب أن يكون صفيف المخزون الذي تم إرجاعه بترتيب أبجدي حسب العنصر.
سيكون المخزون الحالي والجديد بهذا التنسيق: `[[2, "item-0"], [3, "item-1"], [67, "item-2"], [7, "item-3"]]` .
تحتاج إلى العمل من خلال كل عنصر من المخزون الجديد لمعرفة ما إذا كان موجودًا في المخزون الحالي أم لا. تذكر أنه يتم تخزين اسم المنتج كعنصر ثانٍ لكل صفيف فرعي: `array[0][1] = "item-name"` .
// Sort alphabetically, by the product name of each item
arr1.sort(function (a, b) {
if (a[1] > b[1]) {
return 1;
}
if (a[1] <b[1]){
return -1;
}
return 0;
});
return arr1;
}
// test here
// Example inventory lists
var curInv = [
[21, "Bowling Ball"],
[2, "Dirty Sock"],
[1, "Hair Pin"],
[5, "Microphone"]
];
var newInv = [
[2, "Hair Pin"],
[3, "Half-Eaten Apple"],
[67, "Bowling Ball"],
[7, "Toothpaste"]
];
updateInventory(curInv, newInv);
`
### شرح الشفرة:
* يخزن **مؤشر** المتغير موقع (فهرس) منتج.
*`getProductIndex()` دالة المساعد `getProductIndex()` فهرس المنتج المحدد. يتكرر خلال كل عنصر من المصفوفة التي يتم استدعاؤها حتى يمكن العثور على معلمة الاسم. إذا لم يتم العثور على المنتج في المخزون ، يتم إرجاع غير `undefined` .
* ثم ، يتم عمل كل عنصر في المخزون الجديد (التسليم) من خلال:
* تم تعيين **الفهرس** على نتيجة استدعاء دالة المساعد ، أي البحث في المستودع الجديد عن اسم هذا المنتج وإعادته إلى الفهرس.
* إذا تم العثور على العنصر ، يتم إضافة كمية المنتج إلى كمية نفس المنتج في المخزون الحالي.
* إذا لم يتم العثور على العنصر ، فسيتم إضافة المنتج بالكامل (الاسم والكمية) إلى المخزون الحالي.
* ثم يتم فرز المخزون المحدث ، **arr1** ، حسب اسم المنتج (يُعقد في `arr1[x][1]` ).
* ثم يتم إرجاع الصفيف النهائي - تحديث وكذلك فرزها.
*  **لا تقم** بإضافة حلول مشابهة لأي حلول موجودة. إذا كنت تعتقد أنها **_مشابهة ولكن أفضل_** ، فحاول دمج (أو استبدال) الحل المشابه الموجود.
* أضف شرحًا لحلك.
* تصنيف الحل في واحدة من الفئات التالية - **الأساسي****والمتوسط****والمتقدم** . 
* الرجاء إضافة اسم المستخدم الخاص بك فقط إذا قمت بإضافة أي **محتويات رئيسية ذات صلة** . (  **_لا_**_تزيل أي أسماء مستخدمين حالية_ )