Javascript 如何基于属性键过滤对象属性?

Javascript 如何基于属性键过滤对象属性?,javascript,filter,Javascript,Filter,我有一个目标 > state { homeStreet1: 'a', homeStreet2: 'b', homeStreet3: 'c', State: 'MA' } > Object.entries(state) [ [ 'homeStreet1', 'a' ], [ 'homeStreet2', 'b' ], [ 'homeStreet3', 'c' ], [ 'State', 'MA' ] ] 如何从该对象创建过滤掉属性的新对象 我能行 > Obje

我有一个目标

> state
{ homeStreet1: 'a', homeStreet2: 'b', homeStreet3: 'c', State: 'MA' }

> Object.entries(state)
[
  [ 'homeStreet1', 'a' ],
  [ 'homeStreet2', 'b' ],
  [ 'homeStreet3', 'c' ],
  [ 'State', 'MA' ]
]
如何从该对象创建过滤掉属性的新对象

我能行

> Object.entries(state).filter(([key,value]) => { return key !== 'homeStreet3' })
这让我

> [ [ 'homeStreet1', 'a' ], [ 'homeStreet2', 'b' ], [ 'State', 'MA' ] ]

作为一个具有我想要的值的新数组,但如何将其作为对象获取?

有两种方法可以选择最适合您的数组

常数arr=[ [家园1,a], [家园2,b], [州,马], ] 常量res1=Object.fromEntriesar const res2=arr.reduceacc[key,value]=>{…acc[key]:value},{} console.logres1
console.logres2最短的方法是使用不需要的属性homeStreet3的目标进行析构图,并得到剩余的结果

常数 state={homestret1:'a',homestret2:'b',homestret3:'c',state:'MA'}, {homeStreet3,…result}=状态;
console.logresult 进一步阐述这个答案:

常数arr=[ [家园1,a], [家园2,b], [州,马], ] 常量res1=Object.fromEntriesar const res2=arr.reduceacc[key,value]=>{…acc[key]:value},{} console.logres1
console.logres2这是否回答了您的问题?