JavaScript에서 문자열을 정수(숫자)로 변환하려면 parseInt() 메서드를 사용합니다. 이 메서드는 문자열의 시작 부분부터 숫자를 읽어 정수 형태로 반환하며, 만약 입력된 값이 숫자로 변환될 수 없는 경우 NaN(Not a Number)을 반환합니다.
parseInt() 기본 문법
parseInt(string, radix);
- string: 변환할 문자열입니다.
- radix (선택 사항): 진법을 나타내는 값으로, 2부터 36까지 지정할 수 있습니다. 예를 들어 10을 지정하면 십진수로 해석합니다.
예제 코드
아래 예제를 실행하면 버튼을 클릭했을 때 여러 문자열이 parseInt()에 의해 정수로 변환되어 화면에 표시됩니다.
<!DOCTYPE html>
<html>
<body>
<button onclick = "display()">확인</button>
<p id = "demo"></p>
<script>
function display() {
var val1 = parseInt("50") + "<br>";
var val2 = parseInt("52.40") + "<br>";
var val3 = parseInt(" 75 ") + "<br>";
var res = val1 + val2 + val3;
document.getElementById("demo").innerHTML = res;
}
</script>
</body>
</html>실행 결과
50 52 75
결과 분석
parseInt("50")→ 50: 숫자로만 이루어진 문자열은 그대로 정수로 변환됩니다.parseInt("52.40")→ 52: 소수점 이하 자릿수는 잘리고 정수 부분만 반환됩니다.parseInt(" 75 ")→ 75: 문자열 앞뒤의 공백은 자동으로 무시됩니다.
주의 사항
문자열이 숫자로 시작하지 않으면 parseInt()는 NaN을 반환합니다. 예를 들어 parseInt("abc123")은 NaN을 반환합니다. 또한 안전한 결과를 위해 항상 두 번째 인자인 진법(radix) 값을 명시하는 것이 좋습니다. 예를 들어 parseInt("08", 10)처럼 작성하면 십진수임을 확실하게 지정할 수 있습니다.