今天遇到了一个JS浮点数计算的BUG,弄了很久最后才百度发现是JS本身的BUG,所以把他记录下来,下面有加法的解决办法,完整的可以参考JS浮点数精确计算
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<script type="text/javascript">
function add(){
var i=2.65566,j=6.25;
alert(i+j);
}
function add_1(){
var i=2.65566,j=6.25;
try {
r1=i.toString().split(".")[1].length;
} catch (e) {
r1=0;
}
try {
r2=j.toString().split(".")[1].length;
} catch (e) {
r2=0;
}
m=Math.pow(10, Math.max(r1,r2));
re=(i*m+j*m)/m;
alert(re);
}
</script>
<body>
<input type="button" value="加法" onclick="add()">
<input type="button" value="加法_1" onclick="add_1()">
</body>
</html>