gpt4 book ai didi

javascript - C# 和 JS 的计算不同

转载 作者:行者123 更新时间:2023-11-28 17:08:59 25 4
gpt4 key购买 nike

我陷入了数值计算的小困惑。

在 C# 中:

> 44.5 + (((5220886 / 2) - 2496118) / 897211) * 9
< 44.5

在 JS 中:

> 44.5 + (((5220886 / 2) - 2496118) / 897211) * 9
< 45.646803817608124

哪一个是正确的?谁能帮助我理解为什么会发生这种情况?

P.S:虽然 SO 中有一篇文章正在处理 C# floats ,我的问题有点不同,因为我没有对字符串做任何事情。这是纯数值计算。

最佳答案

C# 有整数,JavaScript 没有。 C# 中的整个右侧部分是整数数学,这意味着分数被 chop 。在 C# 中,您需要添加 .0 (例如 var x = 2.0;var 现在是 double)到数字以使其成为 double,而在 JavaScript 中,所有数字在内部都表示为 double 。

关于javascript - C# 和 JS 的计算不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55017571/

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