鍍金池/ 問(wèn)答/HTML/ js合并相同值的數(shù)組,生成一組新的數(shù)組

js合并相同值的數(shù)組,生成一組新的數(shù)組

得到的數(shù)據(jù):

var data = [
{"year":"2018-03-03","qidong":"17:01:37","shicha":"25","jieshu":"17:02:03"},
{"year":"2018-03-03","qidong":"17:01:06","shicha":"14","jieshu":"17:01:20"},
{"year":"2018-03-04","qidong":"17:00:41","shicha":"11","jieshu":"17:00:52"},
{"year":"2018-03-04","qidong":"17:00:06","shicha":"7","jieshu":"17:00:13"}
];

請(qǐng)教如何把數(shù)組生成新的類(lèi)型數(shù)組? 如下

var data = [
{"year":"2018-03-03","qidong":"17:01:37,17:01:06","shicha":"25,14","jieshu":"17:02:03,17:01:20"},
{"year":"2018-03-04","qidong":"17:00:41,17:00:06","shicha":"11,7","jieshu":"17:00:52,17:00:13"},
];
回答
編輯回答
幼梔

function fn(data,type){
let hash=[],arr=[];
data.map((item)=>{

if(hash[item[type]]){
   arr.push(item)
}

})
return arr;
}
console.log(fn(data,'year'))

2018年7月23日 14:48
編輯回答
浪婳
var data = [
        {"year":"2018-03-03","qidong":"17:01:37","shicha":"25","jieshu":"17:02:03"},
        {"year":"2018-03-03","qidong":"17:01:06","shicha":"14","jieshu":"17:01:20"},
        {"year":"2018-03-04","qidong":"17:00:41","shicha":"11","jieshu":"17:00:52"},
        {"year":"2018-03-04","qidong":"17:00:06","shicha":"7","jieshu":"17:00:13"}
    ];
    var _=data.reduce(function(a,b){
        var year=b.year;
        if(!a[year]){
            a[year]={
                qidong:[],
                shicha:[],
                jieshu:[]
            }
        }
        a[year].qidong.push(b.qidong);
        a[year].shicha.push(b.shicha);
        a[year].jieshu.push(b.jieshu);
        return a;
    },{});
    _=Object.keys(_).map(function(item){
        return{
            year: item,
            qidong: _[item].qidong.join(','),
            shicha: _[item].shicha.join(','),
            jieshu: _[item].jieshu.join(','),
        };
    })
    console.log(_);
2017年6月16日 18:42