为什么在javascript中 1.90-0.85=1.0499999999999998 ??????? 谁能告诉我 谁能告诉我怎么解决呢 好奇怪 真奇怪 lai lailai lailai lailai夜深了 没几个人了 哎 看来睡不着了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 呵呵,我在一本书上看到的是说javascript不是用于数值运算的,所以对数据运算的支持不是很好,象这种事是常有的,好象没什么好的解决办法,看将来的版本支持了(参见powell.j javascript: complete reference 电子工业出版社 第一章) <script>alert(qswhSub(1.90,0.85))function qswhSub(n1,n2){var r1,r2,m;try{r1=n1.toString().split(".")[1].length}catch(e){r1=0}try{r2=n2.toString().split(".")[1].length}catch(e){r2=0}m=Math.pow(10,Math.max(r1,r2))return (n1*m-n2*m)/m}</script> 不是错误,是精度问题。from mscript 5.6 文档:浮点值浮点值为带小数部分的数。也可以用科学计数法来表示。这就是说,大写或小写“e”用来表示 10 的次方。Jscript用数值表示的八字节 IEEE754 浮点标准。这意味着数字最大可以到 ±1.7976931348623157x10308,最小到 ±5x10-324。以“0”开始且包含小数点的数字被解释为小数浮点数。 var a 这样的变量定义肯定很不准(弱类型性),因为你根本不知道它是float,或者是int,或者是个string。所以,减法肯定是按照float做的,当然就遇到了精度的问题。 返回一个字符串,代表一个以定点表示法表示的数字。numObj.toFixed([fractionDigits])参数numObj 必选项。一个 Number 对象。 fractionDigits 可选项。小数点后的数字位数。其值必须在 0 – 20 之间,包括 0 和 20。 说明toFixed 方法返回一个以定点表示法表示的数字的字符串形式。该字符串中小数点之前有一位有效数字,而且其后必须包含 fractionDigits 数字。如果没有 fractionDigits 参数,或者该参数为 undefined,toFixed 方法假定该值为 0。要求版本 5.5======================= ◢◣。 ◢◣。 ◢★◣。 ◢★◣。 ◢■■◣。 ◢■■◣。◢■■■◣。 ◢■■■◣。︸︸||︸︸ !!︸︸||︸︸愿您有快乐的每一天 ^_^!! select 的value问题 jquery简单问题 onclick="func('para1','para2')"传递参数不能在FF中通过的问题 javascript 传值flash 问题 我写的JS的代码,不知道什么错误 请问大虾们为什么加表格就会出错 禁止查看源代码的角本,谢谢! 变量传递问题 一段生成随机数的代码中的问题!! jquery插件的使用,请牛人看看 window.open()的超级问题,多次用window.open()竟出现多个窗口,所有个参数一样 如何根据分辨率,控制一个层的位置?再现等待!
(参见powell.j javascript: complete reference 电子工业出版社 第一章)
alert(qswhSub(1.90,0.85))
function qswhSub(n1,n2){
var r1,r2,m;
try{r1=n1.toString().split(".")[1].length}catch(e){r1=0}
try{r2=n2.toString().split(".")[1].length}catch(e){r2=0}
m=Math.pow(10,Math.max(r1,r2))
return (n1*m-n2*m)/m
}
</script>
浮点值为带小数部分的数。也可以用科学计数法来表示。这就是说,大写或小写“e”用来表示 10 的次方。Jscript用数值表示的八字节 IEEE754 浮点标准。这意味着数字最大可以到 ±1.7976931348623157x10308,最小到 ±5x10-324。以“0”开始且包含小数点的数字被解释为小数浮点数。
参数
numObj
必选项。一个 Number 对象。
fractionDigits
可选项。小数点后的数字位数。其值必须在 0 – 20 之间,包括 0 和 20。
说明
toFixed 方法返回一个以定点表示法表示的数字的字符串形式。该字符串中小数点之前有一位有效数字,而且其后必须包含 fractionDigits 数字。如果没有 fractionDigits 参数,或者该参数为 undefined,toFixed 方法假定该值为 0。要求
版本 5.5
=======================
◢◣。 ◢◣。
◢★◣。 ◢★◣。
◢■■◣。 ◢■■◣。
◢■■■◣。 ◢■■■◣。
︸︸||︸︸ !!︸︸||︸︸
愿您有快乐的每一天 ^_^!!