1) Set을 사용한다.
const arr = ['A', 'B', 'C', 'A', 'B'];
const set = new Set(arr);
const newArr = [...set];
console.log(newArr);
Set을 Array로 변환 할 때
const newArray = Array.from(new Set(arr));
2) filter() , indexOf()를 이용하여 중복 제거
const arr = ['A', 'B', 'C', 'A', 'B'];
const newArr = arr.filter((element, index) => arr.indexOf(element) === index);
console.log(newArr);
Array.indexof(element)는 element 중 가장 낮은 인덱스를 리턴한다.
그런데 리턴한 인덱스와 filter의 콜백함수에 있는 파라미터에 있는 인덱스가 다르면 중복된 값이다.따라서 그것을 제외하고 새로운 배열을 생성한다.
3) reduce 메소드를 사용하여 중복을 없앤다.
reduce()는 배열 요소의 값들을 순차적으로 순회하면서 하나의 값을 만드는 함수이다.
const arr = ['A', 'B', 'C', 'A', 'B'];
const initialValue = []
const newArr = arr.reduce((prev, current) => prev.includes(current) ? prev : [...prev, current], initialValue);
console.log(newArr);
4) for 루프를 사용해 모든 데이터를 순회하여 중복을 제거한다.
const arr = ['A', 'B', 'C', 'A', 'B'];
const newarr = [];
arr.forEach((e,i)=>{
if (!newarr.includes(e)) {
newarr.push(e);
}
});
console.log(newarr);