parseInt() 기능함수는 문자열에서 앞부분의 유효한 정수를 추출해 온다.parseInt(jsString,radix)
- 인수
-
- parseInt() : (유효정수 검정 기능함수)
- 필수적인 인수로 최상위 내장 기능함수이다.
- jsString : (검정할 수치 코드)
- 선택적인 인수로 기능함수의 인수(argument)로 주어진 코드로 검정의 대상이 된다.
- jsString은 선택적이기는 하지만, 없으면 값 NaN을 반환한다.
- radix : (정수 베이스)
- 선택적인 인수 radix는 2에서 36 사이의 정수 베이스이다. 몇진수인가를 의미한다.
- 예를 들어 이 정수 베이스 16 이면 16진수 수치(0123456789ABCDEF)로 환산하는 것이다.
- radix가 제공되지 않거나 수치 0이 제공되었으면, 그 정수 베이스를 알아내려는 시도를 한다.
- 첫 문자가 1~9 사이 수치이면 10진수로,
- 0X나 0x로 시작하였으면 16진수로 파싱(parse)하게 된다.
- 0으로 시작되었으면 실제적으로 8진수가 아니더라도 8진수로 파싱한다.
radix를 사용하면 해당 진수의 수치를 10진수 정수 수치로 반환한다.
parseInt("0xDA",16)=218
- 설명
- 제일 앞에 나오는 문자열이 아닌 정수 수치만을 얻어 온다.
- 첫문자가 수치가 아니면 유효수치가 아닌 첫문자부터 문자들을 모두 무시하고 NaN을 반환한다.
- 첫문자가 판정되면 한 문자씩 우측으로 판정해 가는데, 문자열 중에 수치가 아닌 문자를 만나면 그 뒤에 어떤 문자들이 나오거나 관계없이 버리고 맨 먼저 얻어진 정수만을 반환한다.(소수점이나 소수점 뒤의 수치도 버린다.)
- 반환되는 값은 수치들의 문자열이 아니고 정수 수치이다.
- 첫 문자가 수치가 아니거나 빈칸이 맨 먼저 나오는 문자열(빈칸도 수치가 아니므로)도 값 NaN을 반환한다.
- 특기
- 이 parseInt() 기능함수는 parseFloat() 기능함수와 아주 유사하나 parseFloat()에서는 소수점까지 반환하는데 비해 유효수치 중에서 정수만 반환한다는 점이 다르다.
예제
<SCRIPT>
document.write("1) "+parseInt("123")); // 전부 유효수치 정수임
document.write("<BR>2) "+parseInt("12345.12345")); // 소수점을 포함하여 뒤를 무시하고 정수만 반환함
document.write("<BR>3) "+parseInt("3000.00000000")); // 소수점을 포함하여 뒤를 무시하고 정수만 반환함
document.write("<BR>4) "+parseInt("123.123 456.456 789.789")); // 소수점을 포함하여 뒤를 무시하고 정수만 반환함
document.write("<BR>5) "+parseInt("123 맞는가")); // 빈칸을 포함하여 뒤를 무시하고 정수만 반환함
document.write("<BR>6) "+parseInt("123,456,789")); // 컴마(,)를 포함하여 뒤를 무시하고 정수만 반환함
document.write("<BR>7) "+parseInt("수치로 시작 하지 않는 문자열 2003년")); // 첫문자부터 문자가 들어 있어 유효수치 정수가 없음
document.write("<BR>8) "+parseInt("2003년 1월 1일")); // 유효수치가 아닌 '년'을 포함하여 뒤를 무시하고 정수만 반환함
document.write("<BR>9) "+parseInt("=2000")); // 첫문자 '='부터 문자가 들어 있어 유효수치 정수가 없음
</SCRIPT>
1) 123
2) 12345
3) 3000
4) 123
5) 123
6) 123
7) NaN
8) 2003
9) NaN |