救命啊!数值的问题,在线等!

davidtsui1978 2008-05-08 10:00:06

var a = document.getElementById("abc").value;
var x = Number(a) / 100
alert(x);


上面的代码,x 的值很不可靠:

当 a = 0.28 时,x = 0.0028000000000000004
当 a = 0.44 时,x = 0.0044
当 a = 0.45 时,x = 0.0045000000000000005
当 a = 0.46 时,x = 0.0046
当 a = 0.55 时,x = 0.0055000000000000005
当 a = 0.65 时,x = 0.0065000000000000001

实在是搞不懂,也看不出有什么规律,请各位大虾指点下,为什么会多出这么多位数?
...全文
100 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
davidtsui1978 2008-05-08
  • 打赏
  • 举报
回复
又没错了。谢谢李宇春。
zhangw428 2008-05-08
  • 打赏
  • 举报
回复
to davidtsui1978 :
sorry ,刚才笔误,应该是parseFloat
davidtsui1978 2008-05-08
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 muxrwc 的回复:]
JScript codevar a = '0.28';
alert(parseFloat((new Number(a) / 100).toFixed(new String(a).replace(/^\d+\.?/, '').length + 2)));
[/Quote]

出错,小数位数字越界
muxrwc 2008-05-08
  • 打赏
  • 举报
回复
var a = '0.28';
alert(parseFloat((new Number(a) / 100).toFixed(new String(a).replace(/^\d+\.?/, '').length + 2)));

晕,100忘记放上了...
今天反映有点迟钝...灰常困滴飘走.
muxrwc 2008-05-08
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 davidtsui1978 的回复:]
To Muxrwc:
你的意思是说,这是因为js的问题?
[/Quote]
是滴...

[Quote=引用 9 楼 strife 的回复:]
顶李宇春
[/Quote]
汗...
davidtsui1978 2008-05-08
  • 打赏
  • 举报
回复
To Zhangw428:

当a=0.45后,
parseInt(a)的结果为0,明显是转换成整型嘛。


To Muxrwc:
你的意思是说,这是因为js的问题?
strife013 2008-05-08
  • 打赏
  • 举报
回复
顶李宇春
muxrwc 2008-05-08
  • 打赏
  • 举报
回复
至于原因LZ可以看下IEEE浮点数..
PS:偶没看过这东西...
muxrwc 2008-05-08
  • 打赏
  • 举报
回复
...
写错了..

var a = .28;
alert(parseFloat(new Number(a).toFixed(new String(a).replace(/^\d+\.?/, '').length + 2)));
muxrwc 2008-05-08
  • 打赏
  • 举报
回复
- -#
不用理它,干掉就行了..
除以100的话直接就
new Number(a).toFixed(new String(a).length + 2)
zhangw428 2008-05-08
  • 打赏
  • 举报
回复
Number(a)的写法很诡异,很少有这么写的。parseInt()才是转化成浮点数的正规函数
zhangw428 2008-05-08
  • 打赏
  • 举报
回复
var a = document.getElementById("abc").value;
var x = ParseInt(a) / 100
alert(x);
zhangw428 2008-05-08
  • 打赏
  • 举报
回复
var a = document.getElementById("abc").value;
var x = parseInt(a) / 100
alert(x);


Number(a)这种写法很诡异,很少有这么写的。parseInt()才是转化成浮点数的正规函数
s_liangchao1s 2008-05-08
  • 打赏
  • 举报
回复
js的除法不精确
s_liangchao1s 2008-05-08
  • 打赏
  • 举报
回复
js的除法函数本身就不精确!`

87,907

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧