Exper
Simple logical Expression Evaluator
Installation
npm install exper
Introduction
This module can be used for evaluating simple logical expressions. Expressions should be binary logical expressions. Currently supported operators are '=', '>', '<', '&&', '||', 'and', 'or', 'in'. Expression example
'(id = 123323 and price> 1299) or (skuid = 31231 and article in ( shoes, caps)) and sizes.38 = available'
We need to pass an object which can provide values for this expression.
Eg. { id: 123323, price: 2000, skuid: 31231, article: 'shoes', sizes: { '38': 'available', '39': 'not-available'} }
Return value will be true or false accordingly.
if any value is missing in given data or the expression is wrong, result will be false
Usage
let elet exp1 = '(a = 3 or b > 5) and (c in (1,2) or d < 4)' e = e // truee // true e // falsee // false let exp2 = '(id = 123323 and price> 1299) or (skuid = 31231 and article in ( shoes, caps))' e = e // truee // truee // falsee // truee // false let exp3 = '(id = 123323 and price> 1299) or (skuid = 31231 and article in ( shoes, caps)) and sizes.38 = available' e = e // falsee // truee // false
Test
npm test
License
MIT