js数组去重
var data = [
{'name' : '张三'},
{'name' : '李四'},
{'name' : '张刘'},
{'name' : '张三'}
];
//js数组去重
var obj = {};
var res = [];
for (var i = 0; i < data.length; i++) {
if(!obj[data[i].name]){
obj[data[i].name] = 1;
res.push( data[i].name);
}
}
// console.log(res);
js分组求和,根据name和month分组
//js分组求和,根据name和month分组
var data = [
{'month' : '201903','name' : '张三','num' : 5},
{'month' : '201904','name' : '李四','num' : 5},
{'month' : '201905','name' : '张三','num' : 6},
{'month' : '201903','name' : '张三','num' : 6},
{'month' : '201903','name' : '张三','num' : 6},
{'month' : '201904','name' : '李白','num' : 6},
{'month' : '201903','name' : '张三','num' : 6}
];
var obj = {};
var res = [];
for (var i = 0; i < data.length; i++) {
if(!obj[data[i].name] || !obj[data[i].month]){
obj[data[i].name] = 1;
obj[data[i].month] = 2;
res.push({
name :data[i].name,
month :data[i].month,
num : data[i].num,
});
}else{
var num = 0;
for (var j = 0; j< res.length; j++) {
if(res[j].month == data[i].month && res[j].name == data[i].name){
num = parseFloat(res[j].num)+parseFloat(data[i].num);
res[j].num = num;
}
}
}
}
console.log(res);
js去重:
var arr = [
{"id":"1001","name":"值1","value":"111"},
{"id":"1001","name":"值1","value":"11111"},
{"id":"1002","name":"值2","value":"25462"},
{"id":"1002","name":"值2","value":"23131"},
{"id":"1002","name":"值2","value":"2315432"},
{"id":"1003","name":"值3","value":"333333"}
];
var map = {};
dest = [];
for(var i = 0; i < arr.length; i++){
var ai = arr[i];
if(!map[ai.id]){
dest.push({
id: ai.id,
name: ai.name,
data: [ai]
});
map[ai.id] = ai;
}else{
for(var j = 0; j < dest.length; j++){
var dj = dest[j];
if(dj.id == ai.id){
dj.data.push(ai);
break;
}
}
}
}