我有一个数组,我想从中移除一条记录,我已经使用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));
答案 0 :(得分:15)
您需要在过滤器中返回true
或false
以过滤数组中的数据,返回true以保留元素,否则返回false。因此,您可以使用 filter()
newCart = Cart.filter(function(item) {
return parseInt(item.orderId, 10) != parseInt(orderId, 10);
});