如何优雅地将对象剥离到特定领域?

时间:2018-11-12 10:39:33

标签: javascript

我想删除所有多余的字段,但我从对象中指定的字段除外。我该如何优雅地做到这一点。例如:我想要类似的东西:

stat

2 个答案:

答案 0 :(得分:1)

您可以按以下方式使用“ Array.map”和“ Object.assign”

let obj = {email: 'test', id: 'someid', password: 'pas'}

function stripObject(obj , ...args) {
  return Object.assign(...args.map(d => ({ [d]: obj[d] })))
}

console.log(stripObject(obj, 'email', 'id'))

答案 1 :(得分:0)

这有效:

let obj = {email: 'test', id: 'someid', password: 'pas'}

function stripObject(obj, ...args) {
  let newObj = {};
  args.forEach(arg => {
    newObj[arg] = obj[arg];
  });
  return newObj;
}

let stripped = stripObject(obj, 'email', 'id');
console.log(stripped);

JSFiddle:https://jsfiddle.net/gjm0L2vw/