과거 프로그래밍 자료들/코딩테스트
[자바스크립트] 프로그래머스 - 핸드폰 번호 가리기
평부
2022. 6. 23. 10:58
* 출처
https://programmers.co.kr/learn/courses/30/lessons/12948?language=javascript
문제
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
* 문제
프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.
전화번호가 문자열 phone_number로 주어졌을 때,
전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.
* 제한조건
phone_number는 길이 4 이상, 20이하인 문자열입니다
* 입출력 예시
phone_number return
"01033334444" "*******4444"
"027778888" "*****8888"
* 문제
function solution(phone_number) {
var answer = '';
return answer;
}
|
cs |
풀이
- repeat() 메서드는 문자열을 주어진 횟수만큼 반복해 붙인 새로운 문자열을 반환합니다.
- substring() 메소드는 string 객체의 시작 인덱스로 부터 종료 인덱스 전 까지 문자열의 부분 문자열을 반환합니다.
1
2
3
4
|
function solution(phone_number) {
let length = phone_number.length - 4; //"*"표시할 개수
return "*".repeat(length) + phone_number.substring(length)
}
|
cs |
다른 풀이
- slice() 메서드는 어떤 배열의 begin부터 end까지(end 미포함)에 대한 얕은 복사본을 새로운 배열 객체로 반환합니다. 원본 배열은 바뀌지 않습니다.
1
2
3
4
5
|
function solution(phone_number) {
//slice로 뒤의 4자리 부분을 -4로 넣어 출력
let result = "*".repeat(phone_number.length - 4) + phone_number.slice(-4)
return result;
}
|
cs |