今晚在写一个程序的时候,不经意间遇到了这样一个问题,各位大侠指教则个。源程序(为了大家能看明白问题,我重新写了一个):
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>
</head>
<body>
<input type="text" id="t1" size="20" onpropertychange="t3.value=t1.value*t2.value;">
<input type="text" id="t2" onpropertychange="t3.value=t1.value*t2.value;" size="20">
<input type="text" id="t3" size="20" >
</body>
</html>
程序本来很简单,就是网页上的三个文本框的计算,第三个等于第一个和第二个的乘积。可问题出在我测试的时候。当我在第一个文本框输入8.2,第二个文本框输入25的时候,第三个的结果竟然是204.99999999999997,这个结果让我百思不得其解,做了一些数据转换什么的,结果也是依旧。各位可以试验一下,看看是不是也这样!后来,又试了其他的几组数据,发现这样的情况还有很多,像是:(2.2,25),(9.2,25),(9.2,24)等等...小可菜鸟一个,程序写的不多,不知道这样的问题大家遇到过没有,是不是我孤陋寡闻了?还请知道原因的大侠不吝赐教,小可这里先谢了!
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>
</head>
<body>
<input type="text" id="t1" size="20" onpropertychange="t3.value=t1.value*t2.value;">
<input type="text" id="t2" onpropertychange="t3.value=t1.value*t2.value;" size="20">
<input type="text" id="t3" size="20" >
</body>
</html>
程序本来很简单,就是网页上的三个文本框的计算,第三个等于第一个和第二个的乘积。可问题出在我测试的时候。当我在第一个文本框输入8.2,第二个文本框输入25的时候,第三个的结果竟然是204.99999999999997,这个结果让我百思不得其解,做了一些数据转换什么的,结果也是依旧。各位可以试验一下,看看是不是也这样!后来,又试了其他的几组数据,发现这样的情况还有很多,像是:(2.2,25),(9.2,25),(9.2,24)等等...小可菜鸟一个,程序写的不多,不知道这样的问题大家遇到过没有,是不是我孤陋寡闻了?还请知道原因的大侠不吝赐教,小可这里先谢了!
解决方案 »
- 采用 Javascript 编程,还需要 CSS 吗?
- 获取页面元素document.getElementById与document.all
- 请教js如何操作oracle数据库
- 如何让自己页面上的iframe只加载目标页面的文字(即不加载声音与图像)?
- 求助
- 这是什么意思!
- 请问这段有什么错,为什么不能成功插入信息
- firefox中disablediv.style.width = document.body.scrollWidth没有执行
- 怎样实现这个模式匹配
- 用window.close关闭窗口能否不弹出对话框?
- JavaScript 的 function, variable 作用域
- 为什么再减小的时候出错了
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>新建网页 1</title>
</head>
<body>
<input type="text" id="t1" size="20" onpropertychange="t3.value=Math.round(t1.value*t2.value*1000)/1000;">
<input type="text" id="t2" onpropertychange="t3.value=Math.round(t1.value*t2.value*1000)/1000;" size="20">
<input type="text" id="t3" size="20" >
</body>
</html>
数据计算都是怎么做的?
精度的位数就是 1000 这里的0的位数,看你要保留几位了。
好了!