将AngularJS$filter(';filter';)与或一起使用

将AngularJS$filter(';filter';)与或一起使用,angularjs,angular-filters,Angularjs,Angular Filters,我有这个东西 $scope.items = [ {id:1, name:'John'}, {id:2, name:'Steve'}, {id:3, name:'Joey'}, {id:4, name:'Mary'}, {id:5, name:'Marylin'}]; 我需要过滤两个值,比如3,4,我正在尝试类似的东西 $scope.items2 = $filter('filter')($scope.items, {id:3,4}); 我该怎么做?需要

我有这个东西

$scope.items = [
    {id:1, name:'John'},
    {id:2, name:'Steve'},
    {id:3, name:'Joey'},
    {id:4, name:'Mary'},
    {id:5, name:'Marylin'}];
我需要过滤两个值,比如3,4,我正在尝试类似的东西

$scope.items2 =  $filter('filter')($scope.items, {id:3,4});
我该怎么做?需要使用自定义过滤器吗

使用回调函数:

$scope.items2 =  $filter('filter')($scope.items, function(obj) {
    return obj.id == 3 || obj.id == 4;
});
演示: 或者简单地使用相同的方法:

$scope.items2 = $scope.items.filter(function(obj) {
    return obj.id == 3 || obj.id == 4;
});

很 完美!有没有办法将这些值与如下数组进行比较:@PedroMarques@Blackhole你能用fiddle做个例子吗?我尝试了很多方法,比如返回obj.indexOf($scope.val);但是不要工作,谢谢大家。做我的day@PedroMarques没问题,如果答案有用,请随意接受。