亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

遍歷對象數組并根據多個條件對其進行過濾

遍歷對象數組并根據多個條件對其進行過濾

幕布斯6054654 2022-10-08 15:18:28
我有一個包含大量重復/無用數據的對象數組。我需要根據客戶 id 進行過濾并選擇具有最新日期的對象。數據看起來像這樣:let data = [  {    CUSTOMER_PERMANENT_ID: "2495",    EMAIL: "[email protected]",    EVENT_ACTIVATION_TIME: "2019-10-25 13:57:38.79",  },  {    CUSTOMER_PERMANENT_ID: "2495",    EMAIL: "[email protected]",    EVENT_ACTIVATION_TIME: "2019-10-28 20:04:49.016",  },  {    CUSTOMER_PERMANENT_ID: "2495",    EMAIL: "[email protected]",    EVENT_ACTIVATION_TIME: "2019-10-28 20:04:49.019",  },  {    CUSTOMER_PERMANENT_ID: "5995",    EMAIL: "[email protected]",    EVENT_ACTIVATION_TIME: "2019-10-28 17:24:10.98",  }]我嘗試了以下功能,但它僅在有兩個重復對象時才有效,如果有兩個以上,則返回所有對象。public fixDcppSelectedClientData() {    let result = [];    for (let item of this.arr) {      for (let checkingItem of this.arr) {        if (          this.arr.indexOf(item) !=            this.arr.indexOf(checkingItem) &&          item.CUSTOMER_PERMANENT_ID == checkingItem.CUSTOMER_PERMANENT_ID &&          new Date(item.EVENT_ACTIVATION_TIME).getTime() <            new Date(checkingItem.EVENT_ACTIVATION_TIME).getTime()        ) {          if (result.indexOf(checkingItem) == -1) {            result.push(checkingItem);          }        }      }    }    console.log("filtered data is ", result);  }我需要更多地研究這個話題,但是如果有人能在此期間提供幫助,那就太好了。
查看完整描述

2 回答

?
ibeautiful

TA貢獻1993條經驗 獲得超6個贊

let id = "2495"

const query = data

    .filter( obj => obj.CUSTOMER_PERMANENT_ID === id )

    .sort( (obj1, obj2) => 

        (obj1.EVENT_ACTIVATION_TIME < obj2.EVENT_ACTIVATION_TIME) ? 1 : -1 

    )


console.log('latest', query[0]);

console.log('second to latest', query[1]);

console.log('all with this id', query)


查看完整回答
反對 回復 2022-10-08
?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

此代碼過濾器重復 id


var newArr = data.filter((x, index, self) =>

  index === self.findIndex((t) => (

    t.CUSTOMER_PERMANENT_ID === x.CUSTOMER_PERMANENT_ID)));


console.log(newArr);


查看完整回答
反對 回復 2022-10-08
  • 2 回答
  • 0 關注
  • 128 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號