gpt4 book ai didi

javascript - 为什么计算的模/余数运算符对于大数是错误的?

转载 作者:行者123 更新时间:2023-12-02 21:48:12 25 4
gpt4 key购买 nike

我试图理解为什么我无法使用 JavaScript 计算正确的模数。我尝试过的操作是:

错误答案

28493595674446332150349236018567871332790652257295571471311614363091332152517 % 6 = 4

结果应该是 1。

28493595674446332150349236018567871332790652257295571471311614363091332152517 % 6 = 1

我尝试将这个数字转换为 BN,但不幸的是我总是得到相同的答案。但是,如果您使用 Wolfram alpha 或其他数学软件,它会返回正确的答案。

发生什么事了?我做错了什么?

最佳答案

JavaScript 中的整数范围为 +/- 9007199254740991 (Number.MAX_SAFE_INTEGER)。你的号码根本超出了 JS 的范围。

您还可以使用 BigInt 表示法来获得正确的答案。 28493595674446332150349236018567871332790652257295571471311614363091332152517n%6n

参见What is JavaScript's highest integer value that a number can go to without losing precision?

关于javascript - 为什么计算的模/余数运算符对于大数是错误的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60197172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com