*문제 설명
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
제한 조건
phone_number는 길이 4 이상, 20이하인 문자열입니다.**
phone_number라는 매개변수에 번호가 담겨있고 뒤 4자리 빼고 앞자리숫자를 *로 바꾸라는 것으로 이해를 했고 내가 작성한 코드는
function solution(phone_number) {
const newArr = new Array(phone_number.length-4).fill('*')
let newNum = phone_number.slice(-4);
newArr.push(newNum)
return newArr.join('');
}
처음엔 조건문도 써보고 반복문도 써보다가 배열함수를 통해 간단히 풀 수 있을것같아서 배열메소드를 검색해보고 알맞은 것들을 사용해 문제를 풀었습니다!
처음써보는 메소드로 join이 있었는데 array의 string을 하나의 string으로 변환해 주는 메소드였고 추후 배열관련 함수를 만들때 사용될법 할것 같다.
function hide_numbers(s) {
return s.replace(/\d(?=\d{4})/g, "*");
}
다른사람의 풀이인데 정규식을 사용하면 이렇게나 간단히 풀리는걸 보고 정규식도 꼼꼼히 공부해야겠다고 생각했다 🙂