자료구조 및 알고리즘/JavaScript Practice
JS Practice) 프로그래머스 Lv.1 : 핸드폰 번호 가리기
Ryomi
2023. 6. 1. 08:25
728x90
반응형
중복된 문자 제거
문제설명 :
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
제한 사항
- phone_number는 길이 4 이상, 20이하인 문자열입니다.
입출력 예
phone_number | result |
"01033334444" | "*******4444" |
"027778888" | "*****8888" |
첫번째 접근
: 번호의 마지막 네자리를 잘라 변수 lastNum에 담은 후, 배열을 이용해 '*' 를 (번호의 길이 - 4) 만큼 만들어주고 lastNum과 연결한다.
function solution(phone_number) {
let lastNum = phone_number.slice(phone_number.length - 4)
return new Array(phone_number.length - 4).fill('*').join("") + lastNum
}
두번째 접근
: 배열 대신 string의 repeat() 메소드를 사용할 수 있다.
function solution(phone_number) {
let lastNum = phone_number.slice(phone_number.length - 4)
return '*'.repeat(phone_number.length - 4) + lastNum
}
solution
function hide_numbers(s){
var result = "*".repeat(s.length - 4) + s.slice(-4);
return result;
}
string.slice(음수) : 문자열의 끝에서부터 음수의 절대값에 해당하는 문자를 반환
728x90
반응형