代码之家  ›  专栏  ›  技术社区  ›  kennasoft

如何在javascript中的深度嵌套对象成员上使用Ramda的omit()函数

  •  1
  • kennasoft  · 技术社区  · 6 年前

    我有一种情况,我想删除一个对象树的任何部分之前平坦和导出到CSV。 Ramda 是我选择的图书馆吗 FP 但我注意到 R.omit()

    const R = require('ramda');
    
    const obj = {
        id: 1,
        name: 'me',
        audience_sizes: {
            fb: 500,
            dfp: 2000,
            apn: 1800
        }
    };
    
    console.log(JSON.stringify(R.omit(['id', 'audience_sizes.fb'], obj)));
    

    我希望得到以下结果:

    {"name":"me","audience_sizes":{"dfp":2000, "apn": 1800}}
    
    4 回复  |  直到 6 年前
        1
  •  4
  •   Ebuall    6 年前
        2
  •  8
  •   Buggy    6 年前

    我想 Lenses

    R.over(R.lensProp('audience_sizes'), R.omit(['fb']), R.omit(['id'], obj));