Определение правил и условий в javascript = Rhino

#java #javascript #rhino

#java #javascript #rhino

Вопрос:

Мое требование заключается в том, что пользователю предоставляется возможность определять правила, например:

 IF f1 is grt than f2 do this
  

или

 IF f1 > f2 and f2 < f3 ...
  

поэтому он может использовать операторы или текст (скажем, and или amp;amp; )

Теперь нам нужно преобразовать этот текст в текстовом поле в конкретные правила или условия. Существует множество условий (все операторы amp;amp; , || , ! = и т.д. и т.п.) При условии, что это должно быть выполнено в браузере на стороне клиента. Итак, javascript — это способ сделать. У меня недостаточно времени, чтобы написать библиотеку или анализатор. Однако я где-то читал, что rhino обладает этой способностью, но я понятия не имею, как ее использовать.

Заранее спасибо за любые подсказки.

Комментарии:

1. Просто используйте Rhino в качестве движка через Java Scripting API и оценивайте скрипты Javascript (со стандартным синтаксисом) с помощью вызова eval() en.wikipedia.org/wiki/Rhino_ (JavaScript_engine)

Ответ №1:

Если я вас правильно понял, вы хотите перевести правила, написанные на пользовательском языке, в javascript?

В этом случае Rhino не решит вашу проблему: Rhino — это интерпретатор javascript, написанный на Java. Это позволило бы вам оценить правила, если бы они были написаны на javascript.

Комментарии:

1. Итак, что я должен делать??

2. Вы можете либо написать свой собственный переводчик, либо попросить пользователя выразить правила на javascript или подмножестве javascript. В последнем случае вы могли бы использовать Rhino для проверки синтаксиса правил.