get自JavaScript 中数组方法 reduce 的妙用之处
-
需求:将数组转化成一个根据id值作为key,将数组每项作为value的对象进行查找
const userList = [
{
id: 1,
username: 'john',
sex: 1,
email: 'john@163.com'
},
{
id: 2,
username: 'jerry',
sex: 1,
email: 'jerry@163.com'
},
{
id: 3,
username: 'nancy',
sex: 0,
email: ''
}
];
###利用reduce实现
function keyByUsernameReducer(acc, person) {
return {...acc, [person.id]: person};
}
const userObj = userList.reduce(keyByUsernameReducer, {});
###效果
{ '1': { id: 1, username: 'john', sex: 1, email: 'john@163.com' },
'2': { id: 2, username: 'jerry', sex: 1, email: 'jerry@163.com' },
'3': { id: 3, username: 'nancy', sex: 0, email: '' } }
写在后面,这是一个对于现在的我而言美得不想话的代码~~