xiaoTuiMao / service-rule-evaluator

规则判断引擎,结合 `service-rule-parser` 使用

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

service-rule-evaluator NPM version Build Status Dependency Status Coverage percentage

service rule evaluator

Installation

$ npm install --save service-rule-evaluator

Usage

const evaluator = require('service-rule-evaluator');

// 判断是否匹配
evaluator.isMatch('123', { eq: 123 });     // true
evaluator.isMatch('123', { lte: 123 });    // true
evaluator.isMatch('123', { gte: 123 });    // true

// 解释和执行
evaluator.evaluate('count=count+1', { count: 20 });     // { count: 21 }
evaluator.evaluate('count=count  -1', { count: 20 };    // { count: 19 }
evaluator.evaluate('count=count*  3', { count: 20 });   // { count: 60 }
evaluator.evaluate('count=count  /  2', { count: 20 }); // { count: 10 }
evaluator.evaluate('count = Math.max(count/increment, increment*2);', { count: 20, increment: 2 });     // { count: 10 }

License

MIT © wangshijun

About

规则判断引擎,结合 `service-rule-parser` 使用

License:MIT License


Languages

Language:JavaScript 100.0%