프로그래밍언어/Javascript & Typescript
Javascript(ES6) 배열에서 중복값 제거하는 다양한 방법
D.Y
2019. 10. 28. 14:03
반응형
안녕하세요.
오늘은 자바스크립트의 배열에서 중복값을 제거하는 다양한 방법에 대해서 알아보도록 하겠습니다.
코드
/**
* 배열의 중복값을 제거하는 다양한 방법
* 1. `Set`
* 2. `Filter`
* 3. `Reduce`
*
* @param arr
*/
function solution(arr)
{
// # 1. Set
let set = new Set([...arr]);
//expected output: [1, 3, 5, 2, 4]
console.log([...set]);
// # 2. Filter
let ret = arr.filter((item, index) => arr.indexOf(item) === index);
//expected output: [1, 3, 5, 2, 4]
console.log(ret);
// # 3. Reduce
let ret2 = arr.reduce((unique, item) => {
return unique.includes(item)
? unique
: [...unique, item];
}, []); // 초기 Accumulator 값을 빈배열로 설정
//expected output: [1, 3, 5, 2, 4]
console.log(ret2);
}
solution([1, 3, 1, 5, 2, 4, 2, 1]);
참조
- https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Set
- https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce
- https://medium.com/@Dongmin_Jang/javascript-array-%EC%A4%91%EB%B3%B5-%EC%A0%9C%EA%B1%B0%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95-es6-b5b9075361f9
반응형