本文最后更新于 453 天前,其中的信息可能已经有所发展或是发生改变。
_.keyBy(param1,param2)
使用这个函数可将一个js数组根据主键值转换为键值对象
param1: 将要转换的数组
param2: 主键映射函数
例如:
const list = [
{id:"key1",name:"test1"},
{id:"key2",name:"test2"},
{id:"key3",name:"test3"},
];
const res = _.keyBy(list,(item)=>item.id);
console.log(res);
// 结果
/*
{
key1:{id:"key1",name:"test1"},
key2:{id:"key2",name:"test2"},
key3:{id:"key3",name:"test3"},
}
*/
使用原生js进行相同操作:
function convert(list){
const res = {};
list.forEach((item)=>{ res[item.id]=res; })
return list;
}
相比原生操作,省下了不少代码量
_.groupBy(param1,param2)
使用这个函数可将一个js数组进行分组,与keyBy类似,区别是groupBy的映射可以不唯一,这里不再赘述