Java的Long类型的范围比JavaScript大,那就有可能导致精度损失的情况。
先来看看JavaScript的Number的最大值
再看看Java的Long类型的最大值
解决方法很简单,如果Java返回给前端的是个对象,就是在对象里可能出现大数值的那个属性上加个注解,比如说这样:
import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@JsonSerialize(using = ToStringSerializer.class) private Long id;
如果返回的就只是个Long类型的数,那还是转成字符串吧。