Set()
자바스크립트에서 Set 객체를 이용하면 간단하게 중복없는 데이터를 표현할 수 있습니다. 중복값이 있는 배열을 Set 객체로 만들어서 중복을 제거한 후, Spread Operator(전개연산자)를 사용하여 Set 객체를 다시 배열로 변환합니다.
let arr = [3, 1, 3, 5, 2, 4, 4, 4];
let uniqueValues = [...new Set(arr)];
console.log(uniqueValues); // [3, 1, 5, 2, 4]
reduce()
Array.includes(value) : value가 Array배열에 존재하는지 판단해 true, false를 반환합니다.
let arr = [3, 1, 3, 5, 2, 4, 4, 4];
arr.reduce((acc,curr) => acc.includes(curr) ? acc : [...acc,curr],[]);
// [2, 1, 5, 6, 3]
spread operator가 지원이 안될때
// reduce, indexOf
arr.reduce(function(acc,curr,index){
acc.indexOf(curr) > -1 ? acc : acc.push(curr);
return acc;
},[]); // [2, 1, 5, 6, 3]
// filter, indexOf
arr.filter(function(a, i, self){
return self.indexOf(a) === i;
}); // [2, 1, 5, 6, 3]
'Javascript' 카테고리의 다른 글
javascript 두 배열 비교 (합집합, 교집합) (0) | 2021.04.18 |
---|---|
javascript 배열 객체 특정 값 찾기 (0) | 2021.04.18 |
javascript 미디어 쿼리 사용 방법 matchMedia() (0) | 2021.04.18 |
javascript 브라우저 크기 화면 해상도 구하기 (넓이, 높이) (0) | 2021.04.18 |
javascript iframe 컨텐츠에 맞게 높이 자동 조절 (0) | 2021.04.18 |
개의 댓글