Web/JavaScript & JQuery
[JavaScript] 자바스크립트 배열의 중복값 제거하기
쩨리쩨리
2023. 5. 19. 14:55
반응형
Set을 이용한 중복 제거
const array = [1, 2, 3, 3, 4, 4, 5];
const uniqueArray = [...new Set(array)];
console.log(uniqueArray); // 출력 결과: [1, 2, 3, 4, 5]
Set을 이용한 방법이 가장 간단하고 직관적이다. Set은 중복값을 허용하지 않는 특성이 있으므로, Set에 배열을 전달해서 중복값을 제거한 후 다시 배열로 변환할 수 있다.
filter() 함수를 이용한 중복 제거
const array = [1, 2, 3, 3, 4, 4, 5];
const uniqueArray = array.filter((value, index, self) => self.indexOf(value) === index);
console.log(uniqueArray); // 출력 결과: [1, 2, 3, 4, 5]
filter() 함수를 이용하는 방법은 배열의 각 요소를 순회하면서 indexOf() 함수를 사용해 해당 요소가 처음 등장한 인덱스인지 확인하는 것이다. 처음 등장한 인덱스인 경우에만 배열에 포함시킨다.
reduce() 함수를 이용한 중복 제거
const array = [1, 2, 3, 3, 4, 4, 5];
const uniqueArray = array.reduce((unique, item) => {
return unique.includes(item) ? unique : [...unique, item];
}, []);
console.log(uniqueArray); // 출력 결과: [1, 2, 3, 4, 5]
reduce() 함수를 이용하는 방법은 reduce() 함수의 초기값으로 빈 배열을 설정하고, 콜백 함수에서 중복값이 이미 배열에 포함되어 있는지 확인한다. 그 후 중복값이 포함되어 있지 않은 경우에만 배열에 추가한다.
반응형