有办法解决这个问题吗?我在控制台上试过,结果是错误的,但从技术上讲,结果是正确的。
在控制台上进行实验:

发布于 2020-02-03 04:48:29
在C和C++中,余数运算符只接受积分操作数;在ECMAScript中,它也接受浮点操作数。ECMA标准
由%运算符计算的浮点余数运算的结果与IEEE 754-2008定义的“剩余”操作不同。
IEEE 754-2008“余数”操作计算的余数来自舍入除法,而不是截断除法,因此它的行为与通常的整数余数运算符的行为不类似。
console.log(Math.floor(1%0.01)===0)相反,ECMAScript语言定义了浮点操作的%,以类似于Java整数余数操作符的方式运行;这可以与C库函数fmod进行比较。
发布于 2020-02-03 04:42:27
使用Math.floor()
console.log(Math.floor(1%0.01)===0)
https://stackoverflow.com/questions/60033107
复制相似问题