【问题标题】:Large int changed by Ajax [duplicate]Ajax 更改的大整数 [重复]
【发布时间】:2011-10-24 08:24:20
【问题描述】:

我对 Ajax 有一个奇怪(而且相当可怕)的问题。
我将 3 个大整数从 PHP 返回到 Javascript (jQuery):
9849933840800076
9717106838244944
9261288452893495
但收到:
9849933840800076
9717106838244944
9261288452893496

注意第三个整数的最后一位 - WTF ?!?
- 我正在记录所有内容,并且确定不是我的代码在做这件事!
并将它们作为字符串返回确实可以解决问题,但仍然...
很高兴得到一个解释 - 和一些睡眠:)

【问题讨论】:

  • 啊。你是对的 - 我又做了一次:)

标签: php javascript jquery ajax


【解决方案1】:

我的错,对不起。 (谢谢你,Pekka)
JS 在大于 2^53 (+/- 9007199254740992) 的整数上“失去精度”
- 回到蠕动室..

【讨论】:

    【解决方案2】:

    在这种情况下,您始终可以将数字作为字符串返回并在 js 中进行转换

    【讨论】:

    • 不!问题出在js中。我必须远离“9系列”(16位整数ID)
    猜你喜欢
    • 2020-08-30
    • 1970-01-01
    • 2020-12-12
    • 2016-10-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多