如何忽略控制器重复值
问题描述:
angular.forEach(game.market, function (market) {
if (availableMarketGroups[market.group_id]) {
availableMarketGroups[market.group_id].count++;
}
});
我需要得到:如何忽略控制器重复值
如果(availableMarketGroups [market.group_id] & &并且这个值是不是在这的foreach代替)比count ++
从我得到随机数, 例如我得到a,b,b,b,c,d,d - >长度是7 但我想忽略重复的id并从a,b,b,b,c, d,d - > 4
availableMarketGroups [market.group_id]只是身份证号码,如果这个数字有价值,那么我增加计数proporty,但有时这个计数是重复的,我不能得到写数,我不需要delate或删除重复的值,我需要忽略它,并得到正确的计数
答
如果我理解正确,你希望统计独特的ID?您可以使用像地图这样的js对象来存储您已经看到的id。一般的算法是:
var map = {};
var count = 0;
['a' , 'b' , 'b' , 'b' , 'c' , 'd' , 'd'].forEach(function(id){
if(!map[id]){
map[id] = true;
count++;
}
});
console.log(count);
你的情况可能看起来更象这样:
var map = {};
game.market.forEach(function(market){
if(!map[market.group_id] && availableMarketGroups[market.group_id]){
map[market.group_id] = true;
availableMarketGroups[market.group_id].count++;
}
});
修改你的岗位上做出有意义 – Aravind
@Aravind项目是如此之大,其这一小部分,我需要忽略替换值,如果语句 –
替换值从哪里?通过忽略你想要删除的值或你想要达到什么目的? – Aravind