2017-04-17 116 views
-1
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或刪除重複的值,我需要忽略它,並得到正確的計數

+1

修改你的崗位上做出有意義 – Aravind

+0

@Aravind項目是如此之大,其這一小部分,我需要忽略替換值,如果語句 –

+0

替換值從哪裏?通過忽略你想要刪除的值或你想要達到什麼目的? – Aravind

回答

0

如果我理解正確,你希望統計獨特的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++; 
    } 
});