RxJS:从对象中删除字段

RxJS:从对象中删除字段,rxjs,Rxjs,假设我有一个具有4个字段的对象,如下所示: obj = {a:"3", b:"7", c:"10", d:"123"} Rx.Observable.of({ a:"3", b:"7", c:"10", d:"123" }) .map(({ a, c }) => ({ a, c })) 我需要将其“缩小”到具有较少字段的对象,如: newObj = {a:"3", c:"10"} 我知道这可以通过删除字段来实现(即删除对象b) 我的问题是,这可以通过RxJS实现吗?如果是,如何 非

假设我有一个具有4个字段的对象,如下所示:

obj = {a:"3", b:"7", c:"10", d:"123"}
Rx.Observable.of({ a:"3", b:"7", c:"10", d:"123" })
  .map(({ a, c }) => ({ a, c }))
我需要将其“缩小”到具有较少字段的对象,如:

newObj = {a:"3", c:"10"}
我知道这可以通过删除字段来实现(即删除对象b)

我的问题是,这可以通过RxJS实现吗?如果是,如何


非常感谢

如果您有一个发出上述形状的
可观察的
,您可以这样做:

obj = {a:"3", b:"7", c:"10", d:"123"}
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 }

您是否希望对现有对象进行变异,或者它是否也适合您的情况,以获得一个新的对象作为结果?简单回答:不,RXJS中没有删除属性这样的东西真的吗??这是我第一次遇到RxJS做不到的事情。。那就回到过去的好策略吧。。谢谢你,伙计!当然,您可以映射到一个新对象-这就是我问第一个问题的原因-我的另一个问题是:为什么您要尝试用一些库函数替换一些本机对象(如本例中的
delete
)?在最好的情况下,rxjs方法只需调用
delete