본문 바로가기
👋국비 후기 모음👋 (이력도 확인 가능!)
개발/자바스크립트

자바스크립트 객체 배열 중복제거 //remove duplicate javascript object array

by 킴뎁 2021. 8. 18.
728x90
반응형

자바스크립트 배열 중복제거는 되게 많던데.. 객체로 된 배열 중복제거는 정보가 잘 안 나와있어서 정리함.

이거 혼자거 끙끙 3시간 고민하다가 검색했더니 나옴..;; 좋다고 해야할지..

뭔가 직접 로직 짜보려고 삼중포문 써가면서 하다가 그냥 이거 씀...;;

 

누군가는 꼭 도움이 될거라 믿음..!!

const arr = [
  { id: 1, name: "test1" },
  { id: 2, name: "test2" },
  { id: 2, name: "test3" },
  { id: 3, name: "test4" },
  { id: 4, name: "test5" },
  { id: 5, name: "test6" },
  { id: 5, name: "test7" },
  { id: 6, name: "test8" }
];

//중복제거 코드!!
const filteredArr = arr.reduce((acc, current) => {
  const x = acc.find(item => item.id === current.id);
  if (!x) {
    return acc.concat([current]);
  } else {
    return acc;
  }
}, []);

일단 코드는 이렇고 예시를 크롬 콘솔로 작성해봄.

 

reduce를 사용해서 코드 작성 후 새로운 변수에 저장하면 아래와 같이 배열 내 중복된 객체들은 제거됨!

출처 : https://dev.to/marinamosti/removing-duplicates-in-an-array-of-objects-in-js-with-sets-3fep

반응형
👋국비 후기 모음👋 (이력도 확인 가능!)

댓글