fastjson 是否有标记将数字(特别是double、float)序列化为字符串

yws3nbqq  于 2021-11-27  发布在  Java
关注(0)|答案(2)|浏览(367)

是否有标记将数字(特别是double、floa)序列化为字符串;
因为在接口交互或前后端交互的时候,数字(如1.00)在传输后解析可能得不到原始值(比如得到的是1)
这个不利于接口间的传输,能否使用 类似:WriteNonStringValueAsString 将数字等序列化为 字符串

jobtbby3

jobtbby31#

1、改成字符串是比较puzzle的事儿,比如反序列化怎么办?
2、1.00与1仅有格式不同,js里是无法区分的,也无需区分;如果业务有需求,可以在业务Angular 考虑。
3、数值不加引号是规范的要求。
4、从json最佳实践的Angular 看,遵守这些规范是比较好的做法。

如果有强烈的需求,可否举一个更加例子,我们看看有没有办法你的问题。

rhfm7lfc

rhfm7lfc2#

我后端取出的list,其中id是bigint类型的,当该id长度超过16位,比如"expectedSalary":"2","id":911148558063767554,
id长度是18位,那么前端js显示会变成911148558063767600,超过16位的会四舍五入,
如果序列化输出可以把long转成String输出就好了"expectedSalary":"2","id":"911148558063767554"

相关问题