문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
s | return |
---|---|
"Zbcdefg" | "gfedcbZ" |
const solution = (s) => {
let upper = [];
let lower = [];
[...s].forEach(el => {
el === el.toUpperCase() ? upper.push(el) : lower.push(el);
})
return lower.sort().reverse().join('') + upper.sort().reverse().join('')
};
upper
와 lower
를 선언s
를 얕은 복사 후 삼항 연산자와 toUpperCase
로 대문자와 소문자 구분하여 배열에 push
sort
로 정렬 후 reverse
로 뒤집어 큰 것이 앞으로 오도록 반전lower
과 upper
각각 join('')
하여 문자열로 만들고 둘을 하나의 문자열로 합쳐서 반환🪴
toUpperCase()
toLowerCase()
reverse()