首页 > 解决方案 > 我可以从对象中获取一些键值吗?

问题描述

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}

标签: javascript

解决方案


有很多不同的方法可以做到这一点,但我会迭代对象条目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'));


推荐阅读