javascript 배열 중복 제거
Set을 활용한 방법: Set 객체는 중복된 값을 허용하지 않는 특징을 가지고 있습니다. 따라서 Set을 활용하여 배열의 중복을 제거할 수 있습니다.
참고
[...new Set(arr)]에서 ...은 전개 연산자(spread operator)를 나타냅니다. 이 연산자는 배열이나 문자열과 같은 iterable한 객체를 개별 요소로 분리하여 전개합니다. new Set(arr)는 배열 arr을 Set 객체로 변환하는 것을 의미합니다. Set 객체는 중복된 값을 허용하지 않으므로, 중복이 제거된 요소만 포함하는 Set 객체가 생성됩니다. 그런 다음, 전개 연산자 ...를 사용하여 Set 객체의 각 요소를 개별적으로 가져와서 새로운 배열을 생성합니다. 이렇게 하면 중복이 제거된 요소들을 포함하는 새로운 배열인 uniqueArr이 생성됩니다. 간단히 말하면, ...new Set(arr)는 Set 객체를 배열로 변환하여 중복이 제거된 새로운 배열을 생성하는 것을 의미합니다.
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = [...new Set(arr)];
위의 코드는 중복된 요소가 있는 arr 배열을 Set 객체를 통해 중복을 제거한 후, 다시 배열로 변환하여 uniqueArr에 저장합니다. 이렇게 하면 uniqueArr에는 중복이 제거된 배열이 저장됩니다.
filter() 메서드를 활용한 방법: filter() 메서드를 사용하여 배열의 각 요소가 처음 등장하는 인덱스인 경우만 남겨두고 중복된 요소를 제거할 수 있습니다.
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = arr.filter((value, index, self) => {
return self.indexOf(value) === index;
});
위의 코드는 arr 배열에서 filter() 메서드를 사용하여 중복을 제거한 후, uniqueArr에 결과를 저장합니다. 이 방법은 배열의 각 요소를 순회하면서 처음 등장하는 인덱스와 현재 인덱스를 비교하여 중복된 요소를 제거합니다.
참고
[...new Set(arr)]에서 ...은 전개 연산자(spread operator)를 나타냅니다. 이 연산자는 배열이나 문자열과 같은 iterable한 객체를 개별 요소로 분리하여 전개합니다. new Set(arr)는 배열 arr을 Set 객체로 변환하는 것을 의미합니다. Set 객체는 중복된 값을 허용하지 않으므로, 중복이 제거된 요소만 포함하는 Set 객체가 생성됩니다. 그런 다음, 전개 연산자 ...를 사용하여 Set 객체의 각 요소를 개별적으로 가져와서 새로운 배열을 생성합니다. 이렇게 하면 중복이 제거된 요소들을 포함하는 새로운 배열인 uniqueArr이 생성됩니다. 간단히 말하면, ...new Set(arr)는 Set 객체를 배열로 변환하여 중복이 제거된 새로운 배열을 생성하는 것을 의미합니다.
댓글 쓰기
0 댓글