在AngularJS中删除重复数组项的方法有多种。以下是一种常见的方法:
unique
来删除重复数组项。该过滤器会返回一个新数组,其中不包含重复的项。<div ng-app="myApp" ng-controller="myCtrl">
<ul>
<li ng-repeat="item in items | unique">{{ item }}</li>
</ul>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.items = [1, 2, 3, 3, 4, 5, 5];
});
app.filter('unique', function() {
return function(collection) {
return collection.filter(function(item, index, self) {
return self.indexOf(item) === index;
});
};
});
</script>
在上述代码中,items
数组中的重复项会被过滤掉,只显示不重复的项。
Set
对象来删除重复数组项。Set
对象是ES6中引入的一种新的数据结构,它只存储唯一的值。<div ng-app="myApp" ng-controller="myCtrl">
<ul>
<li ng-repeat="item in uniqueItems">{{ item }}</li>
</ul>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.items = [1, 2, 3, 3, 4, 5, 5];
$scope.uniqueItems = Array.from(new Set($scope.items));
});
</script>
在上述代码中,通过将items
数组转换为Set
对象,然后再将其转换回数组,就可以去除重复项。
以上是两种常见的方法,可以根据具体情况选择适合的方法来删除AngularJS中的重复数组项。
领取专属 10元无门槛券
手把手带您无忧上云