<에러코드>
splice는 제거한 문자를 반환한다.
저렇게 onlyNum을 통해서 split과 splice를 동시에 문자열에 저장하고 있으니 계속해서
원본 배열 수정한 값으로 출력도 못하고
아래와 같은 수정안된 원본 배열만 받아보게 된것이다.
function solution(str) {
let onlyNum = str.replace(/[^0-9]/g, "");
if (onlyNum[0] === "0") {
onlyNum.split("").splice(0, 1);
}
return onlyNum;
}
let str = "g0en2T0s8eSoft";
console.log(solution(str));
<제출답안>
수정된 배열을 다른 배열에 저장한 뒤, 문자열로 만들어 줘서 다시 원본 배열을 재정의 했다.
splice는 리턴할 공간이 없으니 제거만 하고 끝나도록 했다.
function solution(str) {
let onlyNum = str.replace(/[^0-9]/g, "");
if (onlyNum[0] === "0") {
zerocheckArr = onlyNum.split("");
zerocheckArr.splice(0, 1);
onlyNum = zerocheckArr.join("");
}
return onlyNum;
}
let str = "g0en2T0s8eSoft";
console.log(solution(str));
'🗃️javascript > 코테 프레임 문제' 카테고리의 다른 글
3-5 문자열 압축(△) (0) | 2024.04.16 |
---|---|
3-4 가장 짧은 문자거리(x)[return문 작성 표시를 안해서 생긴 에러 고찰] (0) | 2024.04.16 |
3-2 유효한 팰린드롬(x) [특수문자만 제거해서 대소문자 남기기] (0) | 2024.04.16 |
3-1 회문 문자열(x)[배열비교는 참조끼리의 비교라 false를 return함] (0) | 2024.04.15 |
2-6 격자판 최대합 (0) | 2024.04.15 |