javascript - 怎么实现数组内对象的值是否相同
本文介绍了javascript - 怎么实现数组内对象的值是否相同的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
var arr = [
{"code": "a", "poll": '一'},
{"code": "b", "poll": '二'},
{"code": "c", "poll": '三'},
{"code": "a", "poll": '四'},
{"code": "c", "poll": '五'},
{"code": "a", "poll": '六'}
];
判断code相等的话就变成
var arr = [
{"code": "a", 'data':['一','四','六']},
{"code": "b", 'data':['二']},
{"code": "c", 'data':['三','五']},
];
解决方案
function handle(arr) {
var res = [],
obj = {},
index = 0;
arr.forEach(val => {
if (obj.hasOwnProperty(val.code)) {
res[obj[val.code]].num.push(val.poll);
} else {
obj[val.code] = index++;
res.push({
code: val.code,
num: [val.poll]
});
}
});
return res;
}
console.log(handle(arr))
这篇关于javascript - 怎么实现数组内对象的值是否相同的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文