javascript-如何删除匹配的req.params.id的对象

前端之家收集整理的这篇文章主要介绍了javascript-如何删除匹配的req.params.id的对象 前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

router.delete('/shopping-cart/:id',(req,res) => {
    let cart = new Cart(req.session.cart);
    console.log(req.params.id);
    console.log(cart.generateArray());
});

console.log(cart.generateArray())输出跟随结果

[{
  item:
    {
      _id: '5c863cc8ee0819f989acf9c3',imagePath: 'https://upload.wikimedia.org/wikipedia/en/5/5e/Gothiccover.png',title: 'Gothic Video',description: 'Absolutely stunning',price: 10,__v: 0
    },image: 'https://upload.wikimedia.org/wikipedia/en/5/5e/Gothiccover.png',qty: 1,id: '5c863cc8ee0819f989acf9c3'
}]

console.log将输出以下结果(req.params.id):

5c863cc8ee0819f989acf9c3

每次用户单击关闭按钮时,都应调用此delete方法删除整个对应的对象.然后在客户端服务器端输出更新的列表.任何可以指出我正确方向的人.

最佳答案
您可以使用过滤器功能删除列表项:

const newList = currentList.filter(element => element.id !== id);

而已. newList仅包含没有匹配ID的元素.具有匹配ID的对象将被删除.

编辑:这是一种方法来检查id是否实际匹配:

console.log('matching object: ',currentList.filter(element => element.id === id)[0]);

猜你在找的JavaScript相关文章