
js数组合并相同值,拼接不同值
这里面有一组数组的后俩个值是重复的,我怎么合并重复的值同时拼接前一个值。例如["中国-天津",10,3],["中国-浙江-杭州",10,3]变为["中国-天津,中国-浙江...
这里面有一组数组的后俩个值是重复的,我怎么合并重复的值同时拼接前一个值。例如["中国-天津",10,3] ,["中国-浙江-杭州",10,3]变为 ["中国-天津,中国-浙江-杭州",10,3]好心人求解
展开
2个回答
展开全部
您好:这个没有现成的方法可用。只能循环比较。先声明一个新数组,把原数组中每一个值取出来一一对比,先添加到新数组中一个,然后取下一个,如果比较相同那就不再往里添加,循环下一个。
展开全部
function merge(dataset){
var temp={};
var rt=[];
var keys=[];
for(var i in dataset){
var key=dataset[i][1]+""+dataset[i][2];
if(temp[key]){
temp[key][0]+=","+dataset[i][0];
}else{
temp[key]=[];
keys.push(key);
temp[key].push(dataset[i][0]);
temp[key].push(dataset[i][1]);
temp[key].push(dataset[i][2]);
}
}
for (var k in keys){
rt.push(temp[keys[k]]);
}
return rt;
}
var temp={};
var rt=[];
var keys=[];
for(var i in dataset){
var key=dataset[i][1]+""+dataset[i][2];
if(temp[key]){
temp[key][0]+=","+dataset[i][0];
}else{
temp[key]=[];
keys.push(key);
temp[key].push(dataset[i][0]);
temp[key].push(dataset[i][1]);
temp[key].push(dataset[i][2]);
}
}
for (var k in keys){
rt.push(temp[keys[k]]);
}
return rt;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询