long型数据显示错误
51minigame 发布于78月前 4答/1534阅

我的原始需求是:一个id:1004300980796932098 被显示成1004300980796932100


实现过程中遇到的问题:


我觉得这个问题的原因是:json数据是对的。但是页面渲染后就是后面错误的值了。

当我将数据改为4300980796932098(去掉前面的3位)后即可显示正确



[沙发] sliver
@51minigame  可能是数据过长,数字使用科学计数法后又重新转回字符显示导致的,在传之前就转成String试试
最佳
[地板] Jieven
@51minigame 这个分别需要确认几处:
1.后台返回数据 是否正常
2.前台获取数据是否正常
3.页面HTML显示数据是否正常
4.中途是否有其它地方处理过,比如拦截器
[地毯] 51minigame
此问题是javascript语言的限制,超出了能准确表达的上限。问题中的Long型有19位。
---
js的number类型有个最大值(安全值)。即2的53次方,为9007199254740992。如果超过这个值,那么js会出现不精确的问题。这个值为16位。
[4楼] 诚金科技
@51minigame 这个后面有没有解决方案。毕竟eova的很多核心代码改不动,前端更改不了
提交评论