我有一个数组,我想从中删除一条记录我已经使用了 Array.filter()
但它返回的是相同的数组。
我的代码:
var url = window.location.pathname,
orderId = url.split('/').slice(-2)[0];
var Cart = JSON.parse(localStorage.getItem('Cart'));
newCart=Cart.filter(function(item) {
if (parseInt(item.orderId) == parseInt(orderId)) {
return {};
}
else
{
return item;
}
});
localStorage.setItem('Cart',JSON.stringify(newCart));
最佳答案
您应该在过滤器中返回 true
或false
以便从数组中过滤数据。
返回 true
将元素添加到过滤列表中,否则返回 false
。
所以你可以使用 filter()
做这样的事情
newCart = Cart.filter(function(item) {
return parseInt(item.orderId, 10) != parseInt(orderId, 10);
});
关于javascript - Array.filter 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32437396/