我们都知道+, Number()
和parseInt()
可以将字符串转换为整数。
但就我而言,我的结果很奇怪。
我需要将字符串'6145390195186705543'
转换为数字。
let str = '6145390195186705543';
let number = +str; // 6145390195186705000, but should be: 6145390195186705543
有人可以解释为什么以及如何解决吗?
最佳答案
您的电话号码在Number.MAX_SAFE_INTEGER
(9,007,199,254,740,991)之上,这意味着js可能很难很好地表示它。
More information
关于javascript - 为什么我不能在不损失JS精度的情况下将字符串转换为数字?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51984393/