parsInt(string, radix)에는 2개의 매개변수가 있습니다. 첫 번째 문자열은 전달된 값이고, 두 번째 radix는 전달된 값의 밑입니다. 기본값은 10입니다. 다양한 밑의 숫자는 무시할 수 있습니다. 10진수 정수로 변환됩니다(정수가 아닌 경우 반내림).
radix의 값 범위는 2~36입니다. radix가 1이거나 radix>36인 경우 변환 결과는 NaN이 되며, radix가 0이거나 다른 값은 무시됩니다. , 기수 기본값은 10입니다.
이 함수를 사용하려면 첫 번째 매개변수가 문자열이어야 합니다. 문자열이 아닌 경우 문자열로 변환됩니다. 또한 변환 전에 문자열 매개변수의 왼쪽은 사용된 문자 집합을 따릅니다. 기본 번호로 변환하기 위해 문자가 잘립니다.
문자열 매개변수의 시작과 끝 부분에 있는 공백은 무시됩니다.
코드 복사
코드 복사
parseInt(0x10,8) //parseInt('16',8)는 14를 얻습니다.
parseInt(0x13,8) //parseInt('19',8) 문자 9가 사용된 8진수를 초과합니다. 문자 범위는 삭제되고 변환 결과는 1입니다.
첫 번째 매개변수가 문자열에 직접 전달되고 기수가 무시되는 경우:
문자열은 다음으로 시작합니다. 0이고 기본적으로 8진수로 인식됩니다(IE 9는 10진수로 인식하고, IE 6~8은 8진수로 인식합니다)
문자열은 0x로 시작하며 기본적으로 16진수로 인식됩니다
그렇지 않으면 10진수로 인식됩니다.
코드 복사
parseInt('010',8) // 8진수로 직접 인식하면 변환 결과는 8
parseInt('010',7) //16진수로 직접 인식하면 변환 결과는 7
parseInt('010',16) //16진수로 직접 인식됨 , 변환 결과는 16
parseInt ('0x10') //16
parseInt('0x1g') //1
parseInt('0x1f') //31
parseInt('0x10' ,8) //8자리 체계로 문자를 직접 인식합니다. 16진수의 표현 형식은 16진수로 올바르게 인식됩니다. 변환 결과는 16 parseInt('0x10',17) // 16진수로 인식, 문자 x 16진수에 사용되는 문자 범위를 벗어나면 변환 결과는 0
parseInt(true) //NaN 주의 Number 함수에서 부울 유형의 사용, Number(true) //1
특별한 주의가 필요합니다
1/0 // Infinity
Infinity.toString() // 'Infinity '
여기 트릭이 있습니다.
코드 복사
코드는 다음과 같습니다.
parseInt(1/0,18) // NaN parseInt(1/0,19) // 18 문자 i가 16진수에 사용되는 문자 세트에 있기 때문에 문자 n과 다음 문자는 삭제됩니다. parseInt(1/0,19)는 실제로는parseInt('i', 19)입니다.
또한
코드 복사
코드는 다음과 같습니다.
parseFloat.length //1