首页 > 解决方案 > 使用 array.filter 方法我如何检查数组对象中的值并从数组的同一对象返回不同的值?

问题描述

在代码中,我从 observable 中获取一个对象数组,并且我想检查该数组的对象中的值,如果满足条件,则从同一对象返回不同的值。我怎样才能做到这一点?

这是代码:

  addresses$ = this.addressData$.pipe(map((addressData)=>{
    addressData.filter((data)=> {data.deviceType === 1})
  }));

数据对象作为

data : {
  deviceType: 1,
  value: "1911 Ralph st, CA - 900099",
  unit: 11
}

我想检查是否deviceType为 1,然后将值“1911 Ralph st, CA - 900099”返回到addresses$. 我想使用过滤器方法来做到这一点。

标签: javascriptarraysangularfilterobservable

解决方案


首先使用 Array.filter 过滤数据,然后使用 Array.map 更改数据。

[1,2,3].filter(x => x > 1).map(x => x * 10)

文档: https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array


推荐阅读