Skip to content

tsv2013/expression-evaluator

Repository files navigation

expression-evaluator

JavaScript (TypeScript) math expression evaluator library

Build Status

How to compile this repo

Sample usage

Basic functions

 var ee = new ExpressionEvaluator(); var res1 = ee.evaluate("6 / 2 + 1 + 2*2 - 5"); var res2 = ee.evaluate("false or false");

Custom functions

 ExpressionEvaluator.operations["myFunc"] = { priority: 100, function: (a, b) => (a+b)/2 } ExpressionEvaluator.operations["mySq"] = { priority: 100, function: a => a*a } ExpressionEvaluator.operations["mySecond"] = { priority: 100, function: (a, b, c) => b } var ee = new ExpressionEvaluator(); var result = ee.evaluate("mySecond(5, myFunc(2,4), mySq(2))");

Evaluation context

 var ee = new ExpressionEvaluator(); var evaluationContext = { propertyName: 1 }; var result = ee.evaluate("{propertyName} + 1", evaluationContext);

About

JavaScript (TypeScript) math expression evaluator library

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published