I would like to find a javascript parser that can handle and evaluate simple expressions. The parser should be able to evaluate the regular mathematical expressions, and support custom functions with parameters. It also has to support strings handling. String concatenation with || operator support is preferred, but it is okay if + will do the trick.
Examples of an expression that should be handled by the parser:
3 * (2 + 1) - 1
2 * func(2, 2)
func('hello world', 0, 5) || ' you'
Has anyone implemented such a thing or where can I find something similar?