评论

对象数组去重

对象数组去重

let arrObj = [

      { name: "小红", id: 1 },

      { name: "小橙", id: 1 },

      { name: "小黄", id: 4 },

      { name: "小绿", id: 3 },

      { name: "小青", id: 1 },

      { name: "小蓝", id: 4 }

    ];

    function fn3(tempArr) {

      let result = [];

      let obj = {};

      for (let i = 0; i < tempArr.length; i++) {

        if (!obj[tempArr[i].id]) {

          result.push(tempArr[i]);

          obj[tempArr[i].id] = true;

        };

      };

      return result;

    }

    fn3(arrObj)

点赞 0
收藏
评论

2 个评论

  • 0
    0
    05-31

    let uniqueMap = new Map();

    arrObj.forEach(item => {

    uniqueMap.set(item.id, item);

    });

    let uniqueArr = Array.from(uniqueMap.values());

    05-31
    赞同
    回复
  • Wei
    Wei
    05-30

    const uniqueArr = arrObj.reduce((unique, o) => {

            if (!unique.find(obj => obj.id === o.id)) {

                unique.push(o);

            }

            return unique;

        }, []);

    05-30
    赞同
    回复
登录 后发表内容