起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1578|回复: 4

[结贴] 两个数(小数位为两位)相加后,得到的和的小数点位数...

[复制链接]

4

主题

7

帖子

41

积分

新手上路

Rank: 1

积分
41
QQ
发表于 2013-12-17 14:52:21 | 显示全部楼层 |阅读模式
版本: X5.2.4 小版本号:
数据库: Oracle 服务器操作系统: Windows 应用服务器:
客户端操作系统: Windows XP 浏览器: IE8
1.JPG
alterall循环相加之后,值的小数点位数发生变化,alterall=alterall+data.getValue("falterall",id)*1     上一循环得出的alterall=232243.32   data.getValue("falterall",id)*1=209019.3    但是算出的alterAll=alterall+data.getValue("falterall",id)*1=232243.32   +209019.3 =2531451.6999999996
请问下这是什么原因呢?是同类型的数据相加

161

主题

1664

帖子

4092

积分

论坛元老

Rank: 8Rank: 8

积分
4092
QQ
发表于 2013-12-17 15:11:33 | 显示全部楼层
这个应该说是编程语言的普遍现象吧:
可以参考一下解决
(Number(a)+Number(b)).toFixed(需要的位数)

评分

参与人数 1 +3 收起 理由
jishuang + 3 赞一个!

查看全部评分

回复 支持 反对

使用道具 举报

89

主题

448

帖子

1354

积分

金牌会员

Rank: 6Rank: 6

积分
1354
QQ
发表于 2013-12-17 15:25:51 | 显示全部楼层
js中加减乘除使用
QQ截图20131217152501.png

评分

参与人数 1 +3 收起 理由
jishuang + 3 赞一个!

查看全部评分

回复 支持 反对

使用道具 举报

4

主题

7

帖子

41

积分

新手上路

Rank: 1

积分
41
QQ
 楼主| 发表于 2013-12-17 15:47:09 | 显示全部楼层
zxzhzqx 发表于 2013-12-17 15:11
这个应该说是编程语言的普遍现象吧:
可以参考一下解决
(Number(a)+Number(b)).toFixed(需要的位数) ...

刚查的结果是JS中的一个bug,我也是暂时用toFixed()方法解决了,谢谢~~
回复 支持 反对

使用道具 举报

4

主题

7

帖子

41

积分

新手上路

Rank: 1

积分
41
QQ
 楼主| 发表于 2013-12-17 15:50:22 | 显示全部楼层
梦毁夕颜 发表于 2013-12-17 15:25
js中加减乘除使用

我后边用accAdd(I)函数来进行相加,得到的结果也一样,小数点位数很多。后边直接用toFixed进行位数固定了,O(∩_∩)O~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-20 06:41 , Processed in 0.116636 second(s), 33 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表