Javascript Multiplication Bug
When i run this script
<script language="javascript">
alert(34.97 * 100)
alert(34.98 * 100)
alert(34.99 * 100)
alert(1.98 * 100)
alert(1.99 * 100)
</script>
I get the following results
3497
3497.9999999999995
3499
198
199
可以用toFixed(number)的方法,或者用下面修改的乘法函数
function mul(n1, n2) { var m=0, s1=n1.toString(), s2=n2.toString(); try { m += s1.split(".")[1].length } catch(e) { } try { m += s2.split(".")[1].length } catch(e){ } return Number(s1.replace(".","")) * Number(s2.replace(".","")) / Math.pow(10, m) }