标签: javascript numbers parsefloat
我正在尝试将“9999999999999099”转换为javascript中的数字/浮点数。 问题是parseFloat(X)和Number(X)都返回9999999999999100。
这个号码不一样。有谁知道为什么会这样,以及如何避免它? 提前谢谢。
答案 0 :(得分:3)
两个数字都具有相同的浮点表示,因为浮点数只能精确到某个级别。
如果这些数字用于计算,为什么需要以千万亿次精度转换它们?如果这些值不用于计算,请将它们保留为字符串。