猿问

Chrome-Javascript:> -3的负指数计算错误

我正在做React项目。

我有用例,我必须在Number<Input>标签上添加step属性。此步骤属性将是动态的。基于数组数据。

数组数据为[{ precision: 2 }, { precision: 4 }, { precision: 5 }]

因此,我生成了如下步骤:

<input type="number" step={ 10 ** -precision } >

这里10 ** -precision将输出:

0.01精度= 2

精度为0.0001 = 4

0.00001 fror精度= 5

这就是我想要的,并且在Firefox和Opera中都能正常工作。

但是Chrome是问题所在,Chrome的输出10 ** -40.00009999999999999999。就我而言,这很糟糕。

Chrome的输出正确,直到输出错误为止10 ** -3

我的Chrome版本是:74.0.3729.131,操作系统:MacOs Mojave:10.14.4


喵喵时光机
浏览 120回答 1
1回答

白板的微信

也许这是一个浮点精度问题。如果您只需要将它作为道具传递给标签,则可以尝试&nbsp;<input type="number" step={ (10 ** -precision).toFixed(precision) } />
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答