개발/Algorithm
[알고리즘 javaScript] 숫자 추출
개발 여행
2021. 11. 24. 20:03
728x90
parseInt 문자열에서 숫자만 추출해보자!
설명
parseInt를 사용하지 않고 문자열에서 추출한 정수를 반환
function extractNumbers(string) {
let result = 0;
if (typeof string !== "string") {
return false;
}
for (const char of string) {
if (!isNaN(char)) {
result = result * 10 + Number(char);
}
}
return result;
}
parseInt를 사용하지 않고 문자열 '00ab30c4' 에서
숫자 304만 반환받으려면 자릿수를 이용해서 반환값을 계산할 수 있다.
result = result * 10 + Number(char); 구문에서
1) char에 첫 번째 0이 들어왔을 때는
0 * 10 + 0 = 0
2) char에 두 번째 0이 들어왔을 때
0 * 10 + 0 = 0
3) char가 3일 때
0 * 10 + 3 = 3
4) char가 (세 번째)0일 때
3 * 10 + 0 = 30
5) char가 4일 때
30 * 10 + 4 = 304
위의 과정을 거치면 최종적으로 result에는 304가 할당된다.
따라서 extractNumbers('00ab30c4');를 호출하면 304가 반환된다.
728x90