【发布时间】:2012-10-16 04:30:15
【问题描述】:
如果我有一个字符串是一个数学方程,我想拆分它然后计算它。我知道我可以使用 eval() 函数来执行此操作,但我很感兴趣是否有其他方法可以执行此操作 - 特别是首先拆分字符串。所以我有类似的东西
var myString = "225 + 15 - 10"
var newString = myString.split(" ");
这会将 myString 变成一个数组:
["225", "+", "15", "-", "10"];
我的下一个任务是将所有奇数字符串转换为整数,我想我可以使用 parseInt();为了。我的问题是,如何将“+”和“-”变成实际的算术运算符?所以最后我会得到一个可以计算的数学表达式?
这可能吗?
【问题讨论】:
-
丑陋的方式是多个 if 语句。
-
做一个真正的解析器,否则这个练习毫无意义:) 这是一篇好文章parsingintro.sourceforge.net
-
除非你有特殊原因,否则就
eval吧。 -
eval() 是救命稻草
标签: javascript