对象数组过滤器angular2

Array of Objects filter angular2

我正在尝试过滤一组对象。我做错了什么。

我的烟斗

 transform(value: any, args?: any): any {
    if (!args) return value;

    return value.filter(item => this.checkValues(item, args));
  }

  checkValues(item, args) {
    const value = Object.keys(item).map(k => item[k]);

    for (var i in value) {
      return value[i].toString().indexOf(args) > -1;
    }
  }

我的数据会像

data= [
{key:value},
{key1:value2}
]

我想搜索值。

发布这个问题后我想出了一个解决方案。

我目前的解决方案

transform(value: any, args?: any): any {
    if (!args) return value;

    return value.filter(item => this.checkValues(item, args));
  }

  checkValues(item, args) {

    const value = Object.keys(item).map(k => item[k]);

    return JSON.stringify(value).indexOf(args) > -1;

  }

这样好吗。或任何推荐的方法?

可以通过

实现
transform(value: any, args?: any): any {
    if (!args) return value;

    return value.filter(item => this.checkValues(item, args));
  }

  checkValues(item, args) {

    const value = Object.keys(item).map(k => item[k]);

    return String(value).indexOf(args) > -1;

  }