[javascript-algorithm] 프로그래머스 - 핸드폰 번호 가리기
(1) 문제링크
https://programmers.co.kr/learn/courses/30/lessons/12948
(2) 문제풀이 및 해설 1
- 문제풀이
let phone_number1 = "01012345678";
let phone_number2 = "0212345678";
function solution(phone_number) {
let phoneString = String(phone_number);
let answer = "*".repeat(phoneString.length - 4) + phoneString.slice(-4);
return answer;
}
console.log(solution(phone_number1)); // *******5678
console.log(solution(phone_number2)); // ******5678
- 문제해설
- 함수안에 새로운 변수 phoneString를 만들어 문자열로 바꾸어 넣어준다.
- repeat() 함수를 활용하여 * 를 반복시킨다. 반복시킬 횟수는 전달받은 문자열의 길이 -4 로 지정한다. 이유는 노출될 번호가 전달받은 문자열 뒷자리 네자리 수 이기 때문이다.
- slice() 메소드를 이용하여 뒷자리 네자리 수를 가져온다.
(2) 문제풀이 및 해설 2
- 문제풀이
let phone_number1 = "01012345678";
let phone_number2 = "0212345678";
function solution(phone_number){
var result = ""
for(let i = 0; i < phone_number.length; i++){
result += i < phone_number.length -4 ? "*" : phone_number.charAt(i);
}
return result;
}
console.log(solution(phone_number1)); // *******5678
console.log(solution(phone_number2)); // ******5678
- 문제해설
- for문을 이용하여 매개변수의 길이만큼 반복한다.
- result 변수에 순차적으로 필요한 값을 할당한다. 삼항연산자를 활용하는데 i값이 매개변수길이-4 보다 적을 경우 * 을 할당하고 i값이 매개변수길이-4보다 같거나 커질경우 매개변수의 특정 인덱스의 단일문자를 추가하여준다.
(3) 참고자료
Author And Source
이 문제에 관하여([javascript-algorithm] 프로그래머스 - 핸드폰 번호 가리기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@y_jem/알고리즘-프로그래머스-핸드폰-번호-가리기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)