일반적으로 문자열을 받아 숫자 문자열을 숫자로 변환하는 parseInt() 및 parseFloat()와 같은 함수가 있습니다. 그러나 이러한 방법은 문자열 내부의 임의의 인덱스에 숫자가 포함된 경우 실패합니다.
예:다음은 454만 반환하지만 우리가 원하는 것은 4545453 −
입니다.parseInt('454ffdg54hg53')
따라서 이러한 문자열을 받아서 해당 숫자를 반환하는 JavaScript 함수를 작성해야 합니다.
예시
다음은 코드입니다 -
const numStr = '454ffdg54hg53'; const parseInteger = numStr => { let res = 0; for(let i = 0; i < numStr.length; i++){ if(!+numStr[i]){ continue; }; res = (res * 10) + (+numStr[i]); }; return res; }; console.log(parseInteger(numStr));
출력
다음은 콘솔의 출력입니다 -
4545453