이것은 오늘날 테스트 된 매우 이상한 것입니다. parseint (1.13*100), 실제 반환 값은 112입니다. 코드를보십시오.
코드 사본은 다음과 같습니다.
<헤드>
<script type = "text/javaScript">
기능 test () {
var thisvalue = 0;
thisvalue = yuantofen ($ ( "#inp"). val ());
경고 (이 값);
}
/* yuan to point*/
기능 yuantofen (yuan) {
Parseint 리턴 (Yuan*100,10); // 솔루션 : 여기에서 반환을 변경하십시오 : Parseint (Yuan*1000,10)/10;
}
</스크립트>
</head>
<body>
<div>
<입력 유형 = "text"id = "inp"name = "pl"value = "1.14"/> <!-이 버그는 입력 값이 1.13, 1.14, 1.15, 1.16 일 때만 나타납니다. 다른 데이터에는 버그가 없습니다.
<입력 유형 = "버튼"이름 = "OK"value = "확인"onclick = "test ();"/>
</div>
</body>
</html>
위의 코드를 실행할 때는 1.13에서 1.16까지의 숫자를 입력하면 1.13이 입력되지만 경고 값은 1.12입니다. 마찬가지로 입력이 1.16 인 경우 Alert는 1.15를 출력합니다.
그러나 이것은 2.13, 3.13 및 0.13을 입력 할 때 발생하지 않습니다.
이 버그는 가장 많은 회계를하는 비즈니스에 특히 중요합니다.
예를 들면 : 누군가에게 돈을 송금하고 싶다면 송금 장치는 (10 억 위안), 1 억 1,300 만 위안을 송금하지만 결국 1 억 1 천 2 백만 위안이되었습니다. 하하. 그냥 농담. 그러나 절차는 엄격합니다. 그것이 센트이든 센트이든, 그것은 누구에게 속하는 사람에게 속하며, 당신은 부주의하지 않아야합니다.