How to get a subset of a javascript object's properties

后端 未结 27 2057
刺人心
刺人心 2020-11-21 22:46

Say I have an object:

elmo = { 
  color: \'red\',
  annoying: true,
  height: \'unknown\',
  meta: { one: \'1\', two: \'2\'}
};

I want to m

27条回答
  •  谎友^
    谎友^ (楼主)
    2020-11-21 23:30

    Dynamic solution

    ['color', 'height'].reduce((a,b) => (a[b]=elmo[b],a), {})
    

    let subset= (obj,keys)=> keys.reduce((a,b)=> (a[b]=obj[b],a),{});
    
    
    // TEST
    
    let elmo = { 
      color: 'red',
      annoying: true,
      height: 'unknown',
      meta: { one: '1', two: '2'}
    };
    
    console.log( subset(elmo, ['color', 'height']) );

提交回复
热议问题