[英]Best way to remove the object from an array using AngularJs
我有一个对象数组。 我想从该数组中删除多个对象。
我已经使用了下面的代码,它绝对可以正常工作,但是我需要与你们确认是否有更好的方法可以做到这一点。
我已经用angularjs和js完成了。
Orders
是执行操作的主要数组。 Order
是要从主Orders
删除的选定商品的数组
$scope.Order = {};
$scope.removeOrders = function () {
angular.forEach($scope.Order, function (data) {
for (var i = $scope.Orders.length - 1; i >= 0; i--) {
if ($scope.Orders[i].Name == data.Name) {
$scope.Orders.splice(i, 1);
}
}
});
}
您可以使用filter
将其缩短很多:
$scope.removeOrders = function () {
$scope.Orders = $scope.Orders.filter(function(order){
return !$scope.Order.some(function(remove){
return remove.Name === order.Name;
});
}); // remove the order from $scope.Orders, if it's name is found in $scope.Order
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.