반응형
Notice
Recent Posts
Archives
Today
Total
Link
관리 메뉴

꾸준하게

[JS코딩테스트] 핸드폰 번호 가리기 본문

JS코딩테스트

[JS코딩테스트] 핸드폰 번호 가리기

DaeunCoding 2023. 4. 17. 09:06
728x90
반응형

https://school.programmers.co.kr/learn/courses/30/lessons/12948

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

[나의풀이]

function solution(phone_number) {
    //뒤 4자리 구하기
    let num = [];
    for(i=phone_number.length - 4;i<phone_number.length;i++){
        num.push(phone_number[i]);
    }
    //앞 숫자 별로 가리기
    let star = [];
    for(i=0;i<phone_number.length - 4;i++){
        star.push('*');
    }
    //문자열로 변환해서 합치기
    let answer = star.join('') + num.join('');
    return answer;
}

 

[다른풀이]

function solution(s){
    var result = "*".repeat(s.length - 4) + s.slice(-4);
    return result;
  }

* str.repeat(n)

str을 n번 반복함

 

* str.slice(n)

str 중 n번째부터 반환

ex. str = 'Hello World!';

str.slice(6) = 'World!';

str.slice(-3) = 'ld!';

 

const solution = n => [...n].fill("*",0,n.length-4).join("")

 

* [...str]

문자열을 글자단위로 펼쳐서 배열로 변환.

ex. [...'Hello'] => ['H', 'e', 'l', 'l', 'o']

 

* str.fill(a,f,u)

문자열str에 index f부터 u까지 a로 바꿈

 

 

728x90
반응형