用js手写一个函数使得0.1+0.2===0.3
时间: 2023-09-09 14:08:25 浏览: 148
可以使用 JavaScript 中的 Number.EPSILON 常量来判断两个浮点数是否相等。Number.EPSILON 表示在 JavaScript 中可表示的最小精度,可以将它与两个浮点数的差值进行比较,如果小于等于 Number.EPSILON,则认为这两个浮点数相等。
以下是一个手写的函数,可以使得 0.1+0.2===0.3:
```javascript
function isEqual(num1, num2) {
return Math.abs(num1 - num2) < Number.EPSILON;
}
var sum = 0.1 + 0.2;
var expected = 0.3;
console.log(isEqual(sum, expected)); // true
```
在上面的例子中,我们先定义了一个 isEqual 函数,它接受两个参数 num1 和 num2,用来判断两个浮点数是否相等。在主程序中,我们计算了 0.1+0.2 的结果 sum,期望的结果是 0.3,然后调用 isEqual 函数进行比较,最终输出结果为 true。
阅读全文