“ For”循环索引未正确递增

时间:2019-07-27 15:14:30

标签: javascript for-loop

当我运行“ For”循环并以0.1递增(从1开始)记录其中使用的索引时,结果不是具有单个小数位的数字,而是具有多个小数位的数字(代码和结果)在下面显示)。

for (let i = 1; i <= 2; i += 0.1) {
    console.log(i);
};

我期望看到以下系列:

1

1.1

1.2

1.3

...

实际上,我得到的是:

1

1.1

1.2000000000000002

1.3000000000000003

1.4000000000000004

1.5000000000000004

1.6000000000000005

1.7000000000000006

1.8000000000000007

1.9000000000000008

这在每种浏览器中都会发生,其方式与我直接在控制台DOM中编译循环或在Visual Studio Code中进行编码的方式相同。 有人对此有解释吗?

1 个答案:

答案 0 :(得分:0)

您是否尝试增加0.100000000000000?

还是使用i = i.toFixed(1)?这会将数字四舍五入到小数点后一位。可能不是您所需要的,因为toFixed会将数字转换为字符串

相关问题