var res = [
{
frtId: "1",
frtName: "中国",
frtCode: null,
frpType: "1414708",
frpName: "01计税表",
reportNnum: "3"
},
{
frtId: "1",
frtName: "中国",
frtCode: null,
frpType: "1414709",
frpName: "02管理",
reportNnum: "3"
},
{
frtId: "1",
frtName: "中国",
frtCode: null,
frpType: "1414710",
frpName: "03安永",
reportNnum: "2"
},
{
frtId: "1",
frtName: "中国",
frtCode: null,
frpType: "1414711",
frpName: "04报税截图",
reportNnum: "3"
},
{
frtId: "1",
frtName: "中国",
frtCode: null,
frpType: "1414712",
frpName: "05其他税务文件",
reportNnum: "1"
},
{
frtId: "2",
frtName: "北京",
frtCode: null,
frpType: "1414708",
frpName: "01计税表",
reportNnum: "3"
},
{
frtId: "2",
frtName: "北京",
frtCode: null,
frpType: "1414709",
frpName: "02管理",
reportNnum: "3"
},
{
frtId: "2",
frtName: "北京",
frtCode: null,
frpType: "1414710",
frpName: "03安永",
reportNnum: "2"
},
{
frtId: "2",
frtName: "北京",
frtCode: null,
frpType: "1414711",
frpName: "04报税截图",
reportNnum: "3"
},
{
frtId: "2",
frtName: "北京",
frtCode: null,
frpType: "1414712",
frpName: "05其他税务文件",
reportNnum: "1"
}
];
/**
* 根据某个key值进行分类,res是数据,key根据建名进行分类
* @param {*} res 要进行分类的数组对象
* @param {*} key 要根据的key值进行分类 (字符串)
@param {*} title 每个大量分类的标题 (没有这个需要可以不传)(字符串)
*/
function data(res, key, title) {
console.log('res',res)
if (!title) {
title = key;
}
let tmpObj = {};
res.map(function(subArr) {
var o = tmpObj[subArr[key]];
if (!o) {
o = {};
o.data = [];
o.title = subArr[title];
o.data.push(subArr);
tmpObj[subArr[key]] = o;
} else {
o.data.push(subArr);
}
return o;
});
return tmpObj;
}
//调用方法
data([res],'frtId','frtName')
</script>
分类的简单写法
/**
* 根据某个key值进行分类,res是数据,以`key`的值作为键名
* @param {*} res 要进行分类的数组对象
* @param {*} key 要根据的key值进行分类 (字符串)
*/
function classifiObj(data,key){
let Report={}
data.forEach((item,index)=>{
if(Report[item[key]]){
Report[item[key]].push(item)
}else{
Report[item[key]]=[]
Report[item[key]].push(item)
}
})
return Report
}
掘金-Markdown 编辑器使用手册 juejin.im/editor/guid…