2017-02-09 83 views
1

删除字段可以说,我有4个字段这样的对象:RxJS:从对象

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

,我需要“窄”能以少的字段的对象,这样的:

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

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

我的问题是,这个可以用RxJS做什么?如果是的话,怎么样?

非常感谢!

+0

您是否在寻找变异现有对象还是也适合你的情况有一个新的对象,结果呢? – olsn

+0

作为一个简短的回答:不,在RxJS – olsn

+0

中没有'delete attributes'真的吗?这是我第一次遇到RxJS无法完成的事情。然后回到好的老战术..谢谢你! –

回答

2

你,如果你有一个Observable,发出上面的形状,你可以做这样的事情:

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

在映射功能,我解构的对象,然后创建一个对象常量语法速记。请注意,这些是es6/7的功能。

但是,你真的不需要rxjs或观测量要做到这一点:

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