2012-07-29 11 views
5

Come analizzare una stringa dall'input dell'utente e ricostruirla in un'istruzione condizionale javascript.Analizza input utente per istruzione condizionale JavaScript

Ad esempio, se l'utente immette la stringa follwing in un texbox

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

Come faccio a ricreare questa stringa per eseguire il seguente lato server JavaScript

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

La mia app è costruito sul nodo .js se queste informazioni sono di aiuto. Sono a conoscenza della funzione eval(), ma prima devo valutare le variabili dall'espressione dell'utente.

Questo sembra troppo complicato per le espressioni regolari. Se qualcuno conosce un semplice parser che realizzerebbe qualcosa del genere sarebbe fantastico.

+0

Perché 'y = 2'? Pensa anche alla sicurezza. –

+0

La sicurezza sarebbe un killer, anche se sfuggire a "" e sandboxing dovrebbe essere sufficiente. –

risposta

4

Esprima è piuttosto fresco: http://esprima.org/

È possibile eseguire in nodo o in un browser.

+0

Sembra fantastico. Grazie per la condivisione. –

+0

Grazie per la condivisione – v1r00z

Problemi correlati