如何在Javascript中比较相同的数组
MasterHash拥有Key of Values of values。
Name1 : [1,10],
Name2 : [2,2134],
Name3 : [3,512],
Name4 : [4,771],
Name5 : [3,555],
Name6 : [1,10],
Name7 : [5, 8888],
Name8 : [1,10],
Name9 : [3,555]
想要输出
1_10 : Name1, Name6, Name8
3_555: Name5, Name9
答案 0 :(得分:0)
您可以使用Object.keys()
和reduce()
执行此操作并返回对象。
var data = {Name1 : [1,10],Name2 : [2,2134],Name3 : [3,512],Name4 : [4,771],Name5 : [3,555],Name6 : [1,10],Name7 : [5, 8888],Name8 : [1,10],Name9 : [3,555]}
var o = {}
var result = Object.keys(data).reduce(function(r, e) {
var k = data[e].join('_');
o[k] = (o[k] || []).concat(e);
if(o[k].length > 1) r[k] = o[k];
return r;
}, {});
document.body.innerHTML = '<pre>' + JSON.stringify(result, 0, 4) + '</pre>';