我有一个正在用Java和JavaScript评估的表达式。
爪哇
System.out.println(582344008L * 719476260);
Output: 418982688909250080
Java脚本
document.write(582344008 * 719476260)
Output: 418982688909250050
为什么两个值都不同?
最佳答案
Javascript数字都是IEEE 754的双精度,因此看来这里存在一些浮点错误。有关更多详细信息,请参见Difference between floats and ints in Javascript?