试图在javascript中对反Json数据进行分组
我一直在尝试按日期对de JSON数据进行分组,并使用相同的日期增加类似的数据。但是,我不知道如何编写代码的一部分,如果他们有相同的日期和增量喜欢相同的日期 下面是JSON数据试图在javascript中对反Json数据进行分组,javascript,json,data-structures,Javascript,Json,Data Structures,我一直在尝试按日期对de JSON数据进行分组,并使用相同的日期增加类似的数据。但是,我不知道如何编写代码的一部分,如果他们有相同的日期和增量喜欢相同的日期 下面是JSON数据 var allIdDate =var allIdDate = [ { "date" : 'sep, 22 2015', "likes" : 2 }, { "date" : 'sep, 22 2015', "likes" : 10 }, { "date" : 'sep, 21 2015', "
var allIdDate =var allIdDate = [
{
"date" : 'sep, 22 2015',
"likes" : 2
},
{
"date" : 'sep, 22 2015',
"likes" : 10
},
{
"date" : 'sep, 21 2015',
"likes" : 4
}
],
这是我的代码,我使用tableDate[]跟踪日期,然后与AllIdDate[]比较,看看它们是否有相同的日期
var tableDate = [];
var groupByDate = [];
for(var j = 0; j < allIdDate.length ; j++){
if(tableDate.indexOf(allIdDate[j].date) != -1){
console.log(true)
//if same date,then increment the likes that correspond with the same date.
}else{
console.log(false)
tableDate[j] = allIdDate[j].date;
groupByDate[j] = ({"date": allIdDate[j].date, " likes": allIdDate[j].likes})
console.log("loop" + j + "" + groupByDate)
}
}
var tableDate=[];
var groupByDate=[];
对于(var j=0;j
此提案的特点是结合了
var allIdDate=[{
“日期”:“2015年9月22日”,
“喜欢”:2
}, {
“日期”:“2015年9月22日”,
“喜欢”:10
}, {
“日期”:“2015年9月21日”,
“喜欢”:4
}],
分组=allIdDate.reduce(函数(r,a){
!r.some(函数(b){
如果(a.日期===b.日期){
b、 喜欢;
返回true;
}
})&r.push(a);
返回r;
}, [])
document.write(“”+JSON.stringify(分组,0,4)+“”)
这不是有效的JSON或有效的JS数组。tableDate是空的,因为..?对不起,我没有提到,我使用空的tableDate来跟踪日期@ergonaut@Andy,我手动输入