알고리즘: 핸드폰 번호 가리기

Kyoorim LEE·2022년 12월 27일
0

알고리즘TIL

목록 보기
30/40

문제 설명

프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.

제한 조건

phone_number는 길이 4 이상, 20이하인 문자열입니다.

입출력 예

phone_numberreturn
"01033334444""****4444"
"027778888""****8888"

풀이

.repeat()

문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열
str.repeat(count)

'abc'.repeat(-1); // RangeError
'abc'.repeat(0); // ''
'abc'.repeat(1); // 'abc'
'abc'.repeat(2); // 'abcabc'
'abc'.repeat(3.5); // 'abcabcabc' (count will be converted to integer)

.slice()

어떤 배열의 begin부터 end(미포함)에 대한 얕은 복사본을 새로운 배열 객체로 반환. 원본 배열은 바뀌지 않음.

let fruits = ['Banana', 'Orange', 'Lemon', 'Apple', 'Mango']
let citrus = fruits.slice(1, 3) // ['Orange','Lemon']

solution

function solution(phone_number) {
   const length = phone_number.length - 4;
    return "*".repeat(length) + phone_number.slice(-4)
   // slice(-4) => 끝에서부터 네 자리
}
profile
oneThing

0개의 댓글