프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 길이 4 이상, 20이하인 문자열입니다.
phone_number | return |
---|---|
'01033334444' | '*******4444' |
'027778888' | '*****8888' |
phone_number.slice(-4)
*
변경 변경하자 *
로 변경하는 방법 for문으로 돌렸다.function solution(phone_number) {
let star=''
for (let i =1 ; i <= phone_number.length-4 ; i++) {
star += "*"
}
return star += phone_number.slice(-4)
}
solution('123456789012349871234') // *****************1234
function hide_numbers(s){
var result = "*".repeat(s.length - 4) + s.slice(-4);
return result;
}
function hide_numbers(s){
var result = ""
for(var i=0;i< s.length;i++){
result += i < s.length -4 ? "*" : s.charAt(i);
}
return result;
}
** charAt()을 사용한 이유는
slice(),substring() 은 2번째 인자를 생략하면 자동으로 마지막 까지 돌려주기때문에 반복되어 답이 나온다.
s.charAt(i)
대신 s[i]
를 사용해줘도 된다.
function hide_numbers(s) {
return s.replace(/\d(?=\d{4})/g, "*");
}