Lodash - 从对象中删除嵌套属性

时间:2016-06-26 07:27:59

标签: javascript lodash

我有一个像这样的对象数组:

[{
    createdAt: "a date",
    id: "my id",
    registered: {
        __type: 'Date',
        iso: 'the date'
    }
}]

因为注册的字段是一个对象而我真正需要的是iso字段,所以在Lodash(或javascript中的....)中有一种快速方法可以将这个对象数组转换为另一个这个?

[{
    createdAt: "a date",
    id: "my id",
    registered: 'the date'
}]

我确实试过这样的事......但是没有用......

const newObj = _.values(measurements).map(element => {
    _.omit(element.registered['__type'])
});

2 个答案:

答案 0 :(得分:2)

如果您不介意改变现有对象,那么.forEach就是您所需要的。只需覆盖该属性,就不需要删除任何内容:

arr.forEach(function(obj) {
  obj.registered = obj.registered.iso;
});

答案 1 :(得分:2)

_.map(data,function(d){
  var iso=d.registered.iso
  d.registered=iso;
  return d;
})

这可以提供帮助。