解析JavaScript条件语句的用户输入

解析JavaScript条件语句的用户输入,javascript,parsing,Javascript,Parsing,如何从用户输入解析字符串并将其重建为javascript条件语句 例如,如果用户在文本框中输入以下字符串 x==1 && y==2 || (z!=3) 如何重新创建此字符串以执行以下服务器端javascript if (vars['x'] == 1 && vars['y'] == 2 || (vars['z'] != 3)) 我的应用程序是建立在node.js上的,如果这些信息有帮助的话。我知道eval()函数,但我需要在求值之前首先从用户表达式中获取变量

如何从用户输入解析字符串并将其重建为javascript条件语句

例如,如果用户在文本框中输入以下字符串

x==1 && y==2 || (z!=3)
如何重新创建此字符串以执行以下服务器端javascript

if (vars['x'] == 1 && vars['y'] == 2 || (vars['z'] != 3)) 
我的应用程序是建立在node.js上的,如果这些信息有帮助的话。我知道eval()函数,但我需要在求值之前首先从用户表达式中获取变量


这对于正则表达式来说似乎太复杂了。如果有人知道一个简单的解析器可以完成这样的任务,那就太好了。

为什么
y=2
?还要考虑安全性。安全性将是一个杀手,即使逃离
并将其沙箱化就足够了。