JavaScript parseInt 함수는 문자열을 정수로 변환하는 데 사용됩니다.
기이한 parseInt 함수 반환 값을 내뱉는 자바스크립트, 마치 표현식이 고장난 것처럼 작동합니다.
이건 자바스크립트의 특성, 고유의 특이점입니다. 버그나 오류가 아닙니다.
0.000003을 parseInt 함수에 전달하면 반환 값은 0입니다. 소수 여섯 번째 자리까지 있습니다.
하지만, 0.0000003을 parseInt 함수에 전달하면 반환 값은 3입니다. 근데 소수 일곱 번째 자리 값은 완전 다르게 평가되고 있습니다.
왜 이런 수식으로 평가될까요? 이번 영상에서 자세하게 설명합니다.
먼저 해당 함수에 대한 배경 지식을 전달합니다.
parseInt는 문자열을 왼쪽에서 오른쪽으로 읽으면서 숫자를 변환하고, 숫자가 아닌 문자를 만나면 변환을 중지합니다. parseInt는 소수점이나 그 이후의 문자를 처리하지 않고, 숫자가 아닌 문자를 만나면 즉시 멈춥니다.
parseInt는 지정된 기수(radix)에서 숫자로 변환할 수 없는 문자를 만날 때까지 문자열을 읽습니다. 숫자가 아닌 문자가 초기에 있으면 변환을 중단합니다.
parseInt는 정수만 반환합니다. 숫자를 반올림하지 않고, 소수점 이하를 잘라냅니다.
#코딩 #자바스크립트 #프로그래밍