data = [
{croptype: "油料作物", cropname: "花生"},
{croptype: "水果类作物", cropname: "血橙"},
{croptype: "水果类作物", cropname: "猕猴桃"},
{croptype: "水果类作物", cropname: "草莓"},
{croptype: "蔬菜类作物", cropname: "田藕"},
{croptype: "蔬菜类作物", cropname: "辣椒"},
{croptype: "粮食作物", cropname: "水稻"},
{croptype: "粮食作物", cropname: "小麦"}
]
function dataDeal(data) { var listArr = []; data.forEach(function (el, index) { for (var i = 0; i < listArr.length; i++) { // 对比相同的字段key,相同放入对应的数组 if (listArr[i].croptype == el.croptype) { listArr[i].listInfo.push({ cropno: el.cropno, cropname: el.cropname }); return; } } // 第一次对比没有参照,放入参照 listArr.push({ croptype: el.croptype, listInfo: [{ cropno: el.cropno, cropname: el.cropname }] }); }); return listArr; }