Javascript angular2-管道-过滤多个json值

Javascript angular2-管道-过滤多个json值,javascript,json,angular,typescript,Javascript,Json,Angular,Typescript,我有一个嵌套json对象数组,如下所示: [{name: {en:'apple',it:'mela'}},{name:{en:'coffee',it:'caffè'}}] 我想要一个管道,它过滤每个对象,每个对象的值都与给定的参数匹配 为此,我创建了一个使用Array.prototype.filter的管道,如下所示: @Pipe({ name: 'search' }) export class SearchPipe implements PipeTransform {

我有一个嵌套json对象数组,如下所示:

[{name: {en:'apple',it:'mela'}},{name:{en:'coffee',it:'caffè'}}]
我想要一个管道,它过滤每个对象,每个对象的值都与给定的参数匹配

为此,我创建了一个使用
Array.prototype.filter
的管道,如下所示:

@Pipe({
    name: 'search'
})    
export class SearchPipe implements PipeTransform {

        transform(items: any[], args: string): any {
           if(!args){
            return items;
           } else {
           return items.filter(item => item.name.en.toLowerCase().indexOf(args[0]) !== -1); //returns every name.en values matching with args

           }
        }   
    }
这允许我按name.en进行筛选。
如何使其能够过滤值
name.en
name.it

过滤时可以使用OR运算符

@Pipe({
    name: 'search'
})    
export class SearchPipe implements PipeTransform {
    transform(items: any[], args: string): any {
      if (!args){
        return items;
      } else {
        return items
          .filter(item => 
            item.name.en.toLowerCase().indexOf(args[0]) !== -1 || item.name.it.toLowerCase().indexOf(args[1]) !== -1 
          );
      }
    }   
}