2012-07-29 10 views
5

¿Cómo puedo analizar una cadena desde la entrada del usuario y reconstruirla en una sentencia condicional de JavaScript?Entrada del usuario de Parse para la declaración condicional de JavaScript

Por ejemplo, si el usuario introduce la cadena follwing en un TexBox

x==1 && y==2 || (z!=3) 

¿Cómo puedo volver a crear esta cadena para ejecutar el lado del servidor JavaScript siguiente

if (vars['x'] == 1 && vars['y'] == 2 || (vars['z'] != 3)) 

Mi aplicación se construye en el nodo .js si esa información ayuda en absoluto. Conozco la función eval(), pero primero necesito tomar las variables de la expresión del usuario antes de la evaluación.

Esto parece demasiado complicado para las expresiones regulares. Si alguien sabe de un analizador simple que lograría algo así, sería genial.

+0

¿Por qué 'y = 2'? También piense en la seguridad. –

+0

La seguridad sería un asesino, aunque escapando del '' 'y de la zona de pruebas debería ser suficiente. –

Respuesta

4

Esprima está muy bien: http://esprima.org/

Se puede ejecutar en el nodo o en un navegador.

+0

Esto se ve genial. Gracias por compartir. –

+0

Gracias por compartir – v1r00z

Cuestiones relacionadas