Еще один вариант: https://github.com/stefanhaustein/expressionparser
Я применил это, чтобы иметь простой, но гибкий вариант, позволяющий обоим:
Связанный выше TreeBuilder является частью демонстрационного пакета CAS , который выполняет символический вывод. Существует также пример BASIC-интерпретатора , и я начал использовать интерпретатор TypeScript , используя его.
AFAIK, addJavascriptInterface ()
работает только с примитивными типами и строками, поэтому вы не можете передавать произвольные объекты Javascript.
Я думаю, вы также можете передавать JSONObject и JSONArray. То есть не только примитивные типы, но и примитивные типы, хранящиеся в массиве javascript [0,1,2] или словаре {one:1, two:2}.
Я НЕ проверял это в коде, просто прочитал документацию. Возможно, скоро это пригодится.