문제 설명
문자열 s가 매개변수로 주어집니다. s에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.
제한사항
- 0 < s의 길이 < 1,000
- s는 소문자로만 이루어져 있습니다.
풀이
const solution = (s) =>
[...s].filter((el, idx, arr) => {
return arr.filter(arrEl => el === arrEl)
.length > 1 ? false : true
})
.sort()
.join("");
- 주어진 s를 전개연산차를 통해 배열로 변환
- filter() 매서드를 두번 사용 해서 하나만 있는 원소를 리턴해준다.
원본 배열에서 현재 원소와 같은것들을 다시 filter() 매서드로 필터링 한 뒤,
해당 배열의 length가 1 초과인 경우 false, 1이하일 경우 true를 리턴해준다. - 생성된 배열을 사전순으로 정렬해야 하니 sort() 매서드를 이용해 오름차순으로 정렬
- join() 매서드를 이용하여 문자열의 형태로 리턴.