ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • programmers: 핸드폰 번호 가리기
    STUDY/Algorithm 2022. 2. 23. 22:34

     

     

    [ 첫번째 풀이 ] 

    function solution(phone_number) {
        let answer = '';
    
        answer = phone_number.slice(-4);
        answer = answer.padStart(phone_number.length, "*"); 
    
        return answer;
    }

    slice() 함수로 뒷자리 4개를 잘라서 저장해주고, padStart() 함수로 번호를 저장해줬다. 

    다시 보니 더 간결하게 쓸 수 있을 것 같아 코드를 정리해보았다.

     

     

    [ 두번째 풀이 ] 

    function solution(phone_number) {
        return phone_number.slice(-4).padStart(phone_number.length, "*");
    }

     

    개인적으로 이렇게 함수를 늘여쓰면 보기 어려워서 나누는 것을 좋아하는데,

    알고리즘은 워낙 짧은 코드를 사랑하니 내가 익숙해지는 방법밖에 없을 것 같다. 

     

     

    문제를 풀고 다른 사람의 풀이를 보니 온갖 방법이 다 들어있었다. 그중에서 정규표현식을 사용한 방법을 보고 아차 싶어서 가져왔다.

     

    [ 다른 사람 풀이 ] 

    function hide_numbers(s) {
      return s.replace(/\d(?=\d{4})/g, "*");
    }
    
    // 아래는 테스트로 출력해 보기 위한 코드입니다.
    console.log("결과 : " + hide_numbers('01033334444'));

     

    매번 문자열 문제를 보면, 정규표현식을 써봐야지~ 하면서도 자꾸 놓치게 된다. 익숙해질때까지 연습해봐야겠다. 

     

     

    'STUDY > Algorithm' 카테고리의 다른 글

    programmers: 직사각형 별찍기  (0) 2022.02.23
    programmers: 크레인 인형뽑기 게임  (0) 2022.02.23
    programmers: 행렬의 덧셈  (0) 2022.02.23
Designed by Tistory.