RxJS:从对象中删除字段

时间:2017-02-09 17:21:58

标签: rxjs

假设我有一个包含4个字段的对象:

obj = {a:"3", b:"7", c:"10", d:"123"}

我需要缩小'它到一个字段较少的对象,如:

newObj = {a:"3", c:"10"}

我知道这可以通过删除字段来完成(即删除obj.b)

我的问题是,这可以用RxJS完成吗?如果是的话,怎么样?

非常感谢!

1 个答案:

答案 0 :(得分:2)

如果您有Observable,如果您发出上述形状,则可以执行以下操作:

Rx.Observable.of({ a:"3", b:"7", c:"10", d:"123" })
  .map(({ a, c }) => ({ a, c }))

在映射函数中,我解构对象,然后用简写语法创建一个对象文字。请注意这些是es6 / 7功能。

但你真的不需要rxjs或Observables来做到这一点:

const original = { a:"3", b:"7", c:"10", d:"123" }
const changed = { a: original.a, c: original.c }