我可以从对象中获取一些键值吗?

时间:2019-01-18 00:50:32

标签: javascript

let source = {a:1, b:2, c:3, d:4, e:5}



let result = (function make('a','c','e'){
    //Who can complete this code?
})()

console.log(result) // {a:1,c:3,e:5}

1 个答案:

答案 0 :(得分:0)

有很多不同的方法可以执行此操作,但是我会用object entries遍历reduce并仅返回那些键是函数参数之一的键/值。

let source = { a: 1, b: 2, c: 3, d: 4, e: 5 };

function filterObj(...args) {
  return Object.entries(source).reduce((a, [k, v]) => {
    if (args.includes(k)) a[k] = v;
    return a;
  }, {});
}

console.log(filterObj('a', 'c', 'e'));