先废话几句:AS中的浮点数计算误差也真是很有趣,例如:6.4-6.3=0.100000000000001,这是在Flash 8中运行的结果,附图一张:
evalString 函数介绍:
evalString(expression:String) : Number
expression 为一个算术表达式,该函数将计算此表达式的值,并返回计算结果。此表达式仅限于简单的+、-、×、÷以及带括号的运算,表达式中不得有其他符号,包括空格。表达式中的数字不仅限于一位整数,也可为多位整数,甚至是小数。
参数
expression:String – 一个字符串表达式。
返回
Number – 一个数值。
示例
var infix:String = “(48-20*(6.2-5))/(18-15)”;
trace(evalString(infix)); //output 8
函数算法思想
算法思想和上一篇《把中缀表达式转化为后缀表达式》…