javascript - 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})`)()
}
但结果完全一样。有没有简单的方法来处理这个错误?因为我唯一能想象的就是剪掉最后两个数字,然后检查点之后的数字是否只有零。如果是,则从方程的结果中删除零和点。但总的来说,处理这个问题的方法似乎有点复杂。
解决方案
推荐阅读
- yii2 - Yii2 唯一验证者加入错误
- nginx - 如何在 IBM bluemix Cloud Foundry 上设置 nginx.conf 以进行单页应用程序路由以及如何设置 url 重写以支持 spa 路由?
- javascript - 如何使用 Django 显示日志
- node.js - NodeJS Socket.io - 发送有效,接收无效
- java - 如果在 Spring Boot 中同时出现多个请求,如何保持?
- blueprism - 无法在蓝色棱镜中加载 OTAClient.dll
- c# - 在 LINQ 中搜索列表时性能缓慢
- dart - Flutter-点击照片后如何将相机保持在屏幕上?
- asp.net-core - ASP .NET Core 在添加的每个项目上构建项目,如何禁用
- php - 更新数据透视表laravel 5中的数据