gpt4 book ai didi

javascript - 如何映射对象数组,返回整个数组,其中一个已更改

转载 作者:行者123 更新时间:2023-12-03 23:00:29 25 4
gpt4 key购买 nike

当我运行 decreaseQuantity()函数,我只想返回整个对象数组,但改变了一个对象的数量(通过将索引传递给函数来确定,在本例中为“1”)。
现在,我只是返回第二个对象(数量正确减少了一个),而我还想返回第一个对象(未更改)。所以我想返回整个对象数组,但指定对象的数量发生了变化。
我做错了什么?帮助表示赞赏。

let cars = 
[
{
color: "red",
type: "minivan",
quantity: 7
},
{
color: "blue",
type: "lambo",
quantity: 5
}
]

function decreaseQuantity(index) {
if (cars[index]) {
const updateCars = cars.map((product, i) => {
if (index == i) return { ...product, quantity: product.quantity - 1};
});
return updateCars;
}
}

console.log(decreaseQuantity(1))

最佳答案

您需要添加return product对于 else 子句。其他一切都很好。您可以尝试使用添加的 else 运行代码到我的答案。并查看 cars 的控制台输出和 updateCars .

let cars = [
{
color: "red",
type: "minivan",
quantity: 7
},
{
color: "blue",
type: "lambo",
quantity: 5
}
];

function decreaseQuantity(index) {
if (cars[index]) {
const updateCars = cars.map((product, i) => {
if (index == i) {
return { ...product, quantity: product.quantity - 1};
} else {
return product;
}
});
return updateCars;
}
}
const updateCars = decreaseQuantity(1);

console.log(cars);
console.log(updateCars);

关于javascript - 如何映射对象数组,返回整个数组,其中一个已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66093331/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com