如何将一串数字和数学运算符变成整数答案?- JavaScript
How would I turn a string of numbers and mathematical operators, into a integer answer? - JavaScript
例如,"22+20"将转换为答案42,其中42是整数。另一个例子是"20/10*4",答案是8。我该怎么做?
简单但危险的答案是使用 eval()
,如:
eval("20/10*4"); // returns 8
但是您必须验证传递给eval()
的任何输入,否则您将面临跨站点脚本 (XSS( 漏洞!它将运行您传递的任何内容,即使代码是恶意的。
您还可以采用更安全但更难的路由,并编写一个解析器来解释字符串并相应地进行计算。
就像 Ed Cottrell 说的,你可以使用eval
但你需要非常小心。相反,您可以使用 math 的表达式解析器.js:
math.eval('20/10*4'); // returns 8
相关文章:
- 这是什么 ==- javascript 运算符
- jQuery/JS包含运算符或类似运算符
- 如何使用js将SNAPSHOT内部版本号转换为3位数的整数
- Javascript逻辑运算符和字符串/数字
- 检测个位数整数时正在转换毫秒
- 限制javascript变量的最小/最大整数
- 模运算符前的双水平线
- 如何在 Javascript 中将变量的值从字符串转换为整数
- 正则表达式只允许 x 个整数
- 我想在AngularJS应用程序中创建一个输入数字框,用户不应该在该框上键入十进制数字.(一个整数输入框)
- 如何在Chartjs中制作整数比例
- jQuery's trim()的前缀为not运算符
- Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
- 减去两个索引不同但值相同的整数
- 如果在构造函数中有“返回”,则在 JavaScript 中的新运算符中做了什么
- 使用jquery从整数中减去
- 如何使用排列运算符来获取具有命名参数的函数的所有参数
- JavaScript 中三元条件和逻辑和运算符的运算符优先级
- “;或“;具有整数的运算符
- 如何将一串数字和数学运算符变成整数答案?- JavaScript