JavaScript 基础知识复习一
Number.MAX_SAFE_INTEGER
最大安全整数
Number.MAX_SAFE_INTEGER
是 number
类型能表示的最大安全整数,为 9007199254740991
,如果数字大于这个数,就会不再精确,比如常见的情况是,后端用 long 类型定义 id,因为 long 类型最大值是 9223372036854775807
,这个数比 JS 的最大安全整数大很多,如果后端用了比 Number.MAX_SAFE_INTEGER
大的数作 id,前端在接收到 JSON 字符串,并格式化后,就会丢失精度。
解决方案是让后端用 String 类型传递 id。
如果是在前端需要对这么大的数进行运算,可以引入第三方库(如 decimal.js)处理,也可以用 JS 新数据类型 BigInt 进行处理。
相关知识:
Number.MIN_SAFE_INTEGER
最小安全整数、Number.EPSILON
最大浮点误差值
评论
全部评论 (0)