프로그래머스 풀이/level0

[Programmers] level 0) 문제 '문자열 정렬하기(1)' 풀이

진기명기 2023. 3. 1. 15:14
🫠 Programmers (level 0) 
👉🏻 문제 32번 (문자열 정렬하기(1)) : 문자열 중 숫자만 오름차순으로 정렬하기

 

 

 


function solution(my_string){

  // filter() 사용하여 숫자만 배열 만들기
  let arr = [...my_string].filter((item) => {
    if(!isNaN(Number(item))){
      return item
    }
  })
  
  // 문자열 > 숫자로 변경 후, 오름차순 정렬하기
  return arr.map((item) => +item).sort()
  
  }

 

✅ 확인할 점

💡 문제에서는 0 ~ 9까지의 숫자만 해당되어서 sort((x, y) => x - y)를 하지 않았지만, 이를 적용해야 10 이상일 때, 문자열로 변경되는 것을 막을 수 있다. 

💡 filter()를 사용할 때, Number()로 숫자 형변환 하는 것과 map()에서 +로 숫자 형변환 하는 것을 기억하자