计算数组中的数据量并增加javascript

时间:2016-04-29 11:53:30

标签: javascript arrays angularjs

我是stackoverflow的新手: 这是我的问题,我想计算用户每月有多少票,并将其推送到我的阵列中, 我做到了:

for(j=0; j< data.data.tickets.length ;j++){
   var requesterid = data.data.tickets[j].requester_id; 
   var created_at = data.data.tickets[j].created_at; 
   var today = new Date().toISOString().slice(0, 7);
    if(created_at.includes(today)&& requesterid == cleartab[requesterid]['id']){total ++}     

      var arrayRef2 = cleartab[requesterid]['monthly'] || [];  
      cleartab[requesterid]['monthly'] = arrayRef2.concat([{"janvier":total}], [{"fevier":"fef"}]); 
}

问题在于它给了我错误的结果。

这是我的阵列:

My array

如果我的问题不明确,我可以重新解释或告诉我你是否需要更多的东西来回答它

我希望你能帮助我 我的问题:
有些人不应该有票,结果不是好票。我想确保在当月发送1张票时只增加一个人。目前,当有人在当月发送票时,每个用户在当月获得+1票。但我想要的是:它只为一个用户(发送票证的用户)增加。那是清楚的吗?

1 个答案:

答案 0 :(得分:1)

根据我对问题的理解,你可以尝试如下:

for(j=0; j< data.data.tickets.length ;j++){
    var requesterid = data.data.tickets[j].requester_id; 
    var created_at = data.data.tickets[j].created_at; 
    var today = new Date().toISOString().slice(0, 7);
    // read the monthly for a given requestor or
    // initialize the new array by setting the total
    // to 0 "janvier:0
    var arrayRef2 = cleartab[requesterid]['monthly'] || 
                    [{"janvier":0}, {"fevier":"fef"}]; 

    if(created_at.includes(today) && 
       requesterid == cleartab[requesterid]['id']){
       // increment the total, very first time the value of
       //  arrayRef2[0].janvier will be zero, but in
       //  next iteration it will be always the previous value
       arrayRef2[0].janvier++;
     }     

     cleartab[requesterid]['monthly'] = arrayRef2; 
 }