Tell us what’s happening:
I’m confused what this is asking. It states “takes a plant object as an argument”, but then has me log a test of the function using a string as an argument. Is this to test if the function is behaving correctly by passing it an incorrect argument? Or does it want me to check if the string name passed has an associated object for that string name?
Either way, it doesn’t look like the function I wrote for it is what it’s looking for. Could you point me in the right direction? Thank you!
Your code so far
const ballerina = {
commonName: "Spanish lavender",
scientificName: "Lavandula stoechas",
cultivar: "Ballerina"
}
const prettyPolly = {
commonName: "Spanish lavender",
scientificName: "Lavandula stoechas",
cultivar: "Pretty Polly"
}
const willowVale = {
commonName: "Spanish lavender",
scientificName: "Lavandula stoechas",
cultivar: "Willow Vale"
}
const hidcote = {
commonName: "English lavender",
scientificName: "Lavandula angustifolia",
cultivar: "Hidcote"
}
const imperialGem = {
commonName: "English lavender",
scientificName: "Lavandula angustifolia",
cultivar: "Imperial Gem"
}
const royalCrown = {
commonName: "French lavender",
scientificName: "Lavandula dentata",
cultivar: "Royal Crown"
}
const catalog = new Map();
catalog.set(ballerina, { small: 20, medium: 15, large: 12 });
catalog.set(prettyPolly, { small: 31, medium: 14, large: 24 });
catalog.set(willowVale, { small: 3, medium: 5, large: 0 });
catalog.set(hidcote, { small: 33, medium: 13, large: 18 });
catalog.set(imperialGem, { small: 19, medium: 35, large: 28 });
catalog.set(royalCrown, { small: 40, medium: 22, large: 9 });
// User Editable Region
function removePlant(plantObj) {
if (catalog.has(plantObj)) {
catalog.delete(plantObj);
return true;
} else {
return false;
};
};
console.log(removePlant("ballerina"));
// User Editable Region
const sellPlants = (plant, size, potsNo) => {
const name = `${plant.scientificName} '${plant.cultivar}'`
const pots = catalog.get(plant);
if (pots[size] - potsNo < 0) {
return `Not enough ${size} size pots for ${name}. Only ${pots[size]} left.`
}
pots[size] -= potsNo;
return `Catalog successfully updated.`
}
console.log(sellPlants(ballerina, "small", 10));
console.log(catalog)
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
Challenge Information:
Build a Plant Nursery Catalog - Step 15