在循环中将 0.1 添加到另一个数字时,我发生了一些奇怪的事情。
function updateLoop() {
for (var key in resources) {
if (resources.hasOwnProperty(key)) { // Key is "Population" here.
// Add income to stock.
resources[key][1] += resources[key][0];
document.getElementById(key).innerHTML = resources[key][1];
}
}
setTimeout(updateLoop, 3000);
}
现在由于某种原因而不是添加 0.1 它有时会添加 0.1000000000000001
在resources
对象内部:
Population: Array[2]
0: 0.1
1: 1.2000000000000002
有谁知道为什么会这样?我可以修复它吗?