개발여행의 블로그
[알고리즘 javaScript] 숫자 추출 본문
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
'개발 > Algorithm' 카테고리의 다른 글
[leetcode]1252. Cells with Odd Values in a Matrix (0) | 2022.03.28 |
---|---|
[leetcode 821. Shortest Distance to a Character] 가장 짧은 문자거리 (0) | 2021.11.24 |
[알고리즘 javaScript] palindrome 팰린드롬:회문 문자열 (0) | 2021.11.24 |
[유클리드 호제법] Euclidean algorithm (0) | 2021.09.09 |
[leetcode] 859. Buddy Strings solution(문제 풀이) (0) | 2021.08.21 |
Comments