起因:

前端调用接口查询finallyScore时,由于后台接口返回的finallyScore是一个对象,从而导致页面展示finallyScore时显示NaN。

 

解决:

1、自己也复现了下这个bug,返回的finallyScore在一些情况下是正常的double型数据,而有时就编程对象了。

2、然后就是debug,找到mongo查询返回的结果,List<Document>中每个Document的finallyScore都是Decimal128类型。

3、查了下Decimal128是什么,原来是mongo的一种类型。

4、然后在mongodb中用$type看一下finallyScore字段到底被存成哪些类型了,如图:

解决了个关于Mongo的Decimal128类型的问题

解决了个关于Mongo的Decimal128类型的问题

 

也就是说,页面显示没问题的时候是Double类型。。

而返回的finallyScore是对象时,则是由于json框架解析Decimal128时不是识别成一种数值类型,而是按照getter方式获取数据。

Decimal128有以下public的getter方法,json解析后的是这些返回值。

解决了个关于Mongo的Decimal128类型的问题

相关文章:

  • 2022-01-19
  • 2022-12-23
  • 2021-06-07
  • 2021-10-16
  • 2022-12-23
  • 2021-12-08
  • 2021-12-05
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-13
  • 2021-11-09
  • 2022-12-23
相关资源
相似解决方案