我有一个对象数组
const myArr = [
{k1: 1, k2: 1, k3: 3, k4: 4},
{k1: 1, k2: 2, k3: 3, k4: 4},
{k1: 1, k2: 2, k3: 3, k4: 4},
{k1: 1, k2: 2, k3: 3, k4: 4}
]
我正在尝试过滤这些,我不需要使用过滤器,但这正是我目前正在做的。
const filteredObj = myArr.filter(item => item.k2 === 1)
,但我想只保留一个键值对。例如
console.log(myArr) => {k2: 1}
使用map()
与对象解构和属性简写语法:
const myArr = [
{k1: 1, k2: 1, k3: 3, k4: 4},
{k1: 1, k2: 2, k3: 3, k4: 4},
{k1: 1, k2: 2, k3: 3, k4: 4},
{k1: 1, k2: 2, k3: 3, k4: 4}
]
const filteredObj = myArr.filter(item => item.k2 === 1).map(({k2}) => ({k2}));
console.log(filteredObj);