首页 > 解决方案 > eval函数计算错误

问题描述

所以现在,我正在做一个计算器,我有一个简单的 eval 函数。不幸的是,它不能正常工作。这是一个例子:

eval((((((78)/63)+45)-45)*63));   //the result is 78.00000000000017 instead of just 78

我通过自己创建简单的计算函数来尝试一些替代方案,如下所示:

function parse(str) {
  return Function(`'use strict'; return (${str})`)()
}

但结果完全一样。有没有简单的方法来处理这个错误?因为我唯一能想象的就是剪掉最后两个数字,然后检查点之后的数字是否只有零。如果是,则从方程的结果中删除零和点。但总的来说,处理这个问题的方法似乎有点复杂。

标签: javascriptevalcalculator

解决方案


推荐阅读