【问题标题】:Why is a number having greater than 15 digits auto rounded in javascript? [duplicate]为什么在 javascript 中自动舍入超过 15 位的数字? [复制]
【发布时间】:2011-04-08 05:47:00
【问题描述】:

我的 javascript 号码有问题。我的问题是我在 HTML 中有一个货币字段,当我使用 javascript 计算另一个字段时;然后如果此输入字段的位数> 15,则自动舍入。 你可以在萤火虫中试试这个。例如:

(9999999999999999);
10000000000000000 

我该如何解决这个问题?

【问题讨论】:

    标签: javascript numbers rounding


    【解决方案1】:

    您有一个 currency 字段,您关心的是舍入超过 9999999999999999??

    我对那里印象深刻:P

    这是拥有大浮点数的限制。除了获得一个 bigint javascript 库之外,没有简单的方法可以解决它,我敢肯定那里有一些。但老实说,你为什么在乎?

    【讨论】:

    • Javascript 数字不是 32 位的。它们是 IEEE-754 双精度数,占用 64 位:1 个符号、11 个指数、52 个(显式)尾数。
    • @Ken,是的,你是对的,我累了。这是浮点数的限制。更好的? :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-21
    • 2015-04-01
    相关资源
    最近更新 更多