请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

wangqgsunway

中级会员

84

主题

224

帖子

740

积分

中级会员

积分
740

[已处理] 计算长度问题

wangqgsunway
中级会员   /  发表于:2018-9-17 15:22  /   查看:3824  /  回复:9
=10.68*99.7/100/3321300/10
返回 0
=10.68*99.7/100/3321300/1
返回正常
返回
0.000003205961521
spreadjs 计算长度限制为多少?

另外发现
=0.123456789123456/100
计算是正常的,虽然也到了长度的极限了。


这个是问题吗?能不能不返回0,返回一个四舍五入的数。






9 个回复

倒序浏览
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-9-17 15:44:13
沙发
您好,对于计算式
=10.68*99.7/100/3321300/10
如果您在设置了单元格格式为数值,
并且小数位不够(包括四舍五入后最后一位依然是0)时确实会显示0,
个人推荐您可以设置为其他格式,
可以让算式结果显示为科学记数法的结果或者别的合法格式,请参考:
https://demo.grapecity.com.cn/Sp ... emos/basicFormatter
回复 使用道具 举报
wangqgsunway
中级会员   /  发表于:2018-9-17 15:58:06
板凳
这个和这个格子的格式有关?  需要设置一个格式就好使了么?  我们设置了科学记数法  也显示0
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-9-17 17:03:15
地板
是的,这个显示为0是与单元格的格式有关,具体说来应该是与显示位数有关,您仔细看一下我发给您的Demo,
其中有一个关键的设置单元格格式的方法是formatter,方法的API链接:
http://help.grapecity.com/spread ... ange~formatter.html
举个例子,设置单元格位数可以通过sheet.getCell(row, col).formatter(new GC.Spread.Formatter.GeneralFormatter("#,##0.00000000000000000000"))
来实现,formatter中传入的字符串的位数就是单元格显示的位数。
回复 使用道具 举报
wangqgsunway
中级会员   /  发表于:2018-9-17 17:19:13
5#
我们可能在任何一个格子上做这样的运算 ,不至于每个格子都做这样的格式设置?
我看到你的demo上没有这样的错误,但是spreadjs 11.1上有这样的问题。
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-9-17 17:47:09
6#
默认情况下spreadjs会根据单元格的内容给一个autoformatter,向您上面的:
=10.68*99.7/100/3321300/10 默认会给一个科学计数法的formatter,结果也不是0
image.png544940795.png
所以您这边如果现实为0,您需要看一下您代码中是否自己设置了formatter。如果没有,请提供一个能够重现问题的demo。
回复 使用道具 举报
wangqgsunway
中级会员   /  发表于:2018-9-18 10:13:26
7#
本帖最后由 wangqgsunway 于 2018-9-18 10:14 编辑

可是我确实显示的是 0 ,   在11.1.4版本上,在11.0.4版本上是科学计数法显示的
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2018-9-18 11:28:06
8#
我这边11.1.4版本没能重现
附上我的测试demo

model_v11.1.4_formula.html

1.05 KB, 下载次数: 111

回复 使用道具 举报
wangqgsunway
中级会员   /  发表于:2018-9-20 09:49:23
9#
sorry 是我的过错,我重写了 Number.prototype.toFixed 方法   这个计算走了  这个方法。

回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2018-9-20 10:06:39
10#
没关系,很高兴能解决问题,本帖我结帖操作了,有问题欢迎再发新帖。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部