Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

This is JavaScript to designed a track inventory for a store. I need the invento

ID: 3806628 • Letter: T

Question

This is JavaScript to designed a track inventory for a store.

I need the inventory that exposes the following functionality:

addItem - A function that takes 2 parameters: an item's name and price and tracks it internally.

items - A function that returns a list of items, sorted by price from least expensive to most expensive.

getMostExpensive - Returns an object that contains the item's name and price for the most expensive item that has been added.

getLeastExpensive - Returns an object that contains the item's name and price for the most least expensive item that has been added.

removeItem - Remove an item by name.

getItemByName - Returns an item's name and price by name.

getItemByPrice - Returns an item's name and price by price.

Explanation / Answer

PROGRAM CODE:

function Item(n, p) {
this.name = n;
this.price = p;
  
this.getName = function()
{
           return this.name
       }
this.getPrice = function()
{
           return this.price;
       }
   }

Item itemsArray = new Array();
var size = 0;
//adding item to the list
function addItem(name, price)
{
   items.push(new Item(name, price));
size++;
}

//sorting the list
function sort()
{
   for(i=0; i<itemsArray.length; i++)
{
       for(j=0; j<itemsArray.length; j++)
{
           if(itemsArray[i].getPrice() > itemsArray[j].getPrice())
{
               Item temp = itemsArray[j];
itemsArray[j] = itemsArray[i];
itemsArray[i] = temp;
}
}
   }
}

//returning the items
function items()
{
   sort();
   returns itemsArray;
}

//Returns an object that contains the item's name and price for the most expensive item that has been added
function getMostExpensive()
{
   sort();
if(size == 0)
   return null;
else
return itemsArray[size-1];
}

//Returns an object that contains the item's name and price for the most least expensive item that has been added
function getLeastExpensive()
{
   sort();
if(size == 0)
return null;
else
return itemsArray[0];
}

//removes an item from the list
function removeItem(name)
{
   for(i=0; i<itemsArray.length; i++)
{
   if(itemsArray[i].getName() == name)
{
Item it = itemsArray[i];
while(i<size-1)
{
   itemsArray[i] = itemsArray[i+1];
i++;
}
size--;
return it;
       }
}
return null;
}
//returning an item that matches the name
function getItemByName(name)
{
   for(i=0; i<itemsArray.length; i++)
{
   if(itemsArray[i].getName() == name)
{
   return itemsArray[i];
}
}
}
//returning an item the price
function getItemByPrice(price)
{
   for(i=0; i<itemsArray.length; i++)
{
   if(itemsArray[i].getPrice() == price)
{
   return itemsArray[i];
}
}
}

Hire Me For All Your Tutoring Needs
Integrity-first tutoring: clear explanations, guidance, and feedback.
Drop an Email at
drjack9650@gmail.com
Chat Now And Get Quote