2016-01-21 51 views
0

在我的应用程序中,我需要允许用户添加自己的数学公式,可以使用运算符和调用变量。无论如何,要验证用户是否写错了变量或未知变量来显示错误? 我有和例如here,你有一些范围变量在控制器的顶部。稍有不同,如果我在示例中插入一个无效变量,它会显示null,但在我的代码中显示为空白。

有什么建议吗?

回答

0

说实话,如果你不是懒洋洋地把这个东西扔进eval,你可以很容易地自己解析它,我会重新调整。

如何删除所有的空格,并对每个单个字符进行交互? 我的意思是只要没有像aa或ab这样的变量,就可以像检查一样。

for (var i = 0; i < answer.length ; i++) { 
    if (!isvalidParamOrOperator(answer[i])) { 
     //can show error at position i+1; 
     return false; 
    } 
} 

与isValidParamOrOperator是像

function(str) { 
    return "1234567890ab".indexOf(str); 
} 

当然它成为在较长PARAMS有点复杂,但你能创造的东西,像+所有运营商拆分 - 空间&号码。然后你会得到一个你可以检查的所有参数列表。它应该可以在数组上进行检查而不是我当前的建议,但是在执行这样的事情之后,这应该不难。

+0

不错,没有这样的方式,我的变量属于一个对象称为项目,然后它有自己的参数,如item.price,item.workflow等 – changez

+0

我想你可以通过使用我的建议。 –

相关问题