需求:通过 公式判定结果 取对应的 值 。
一开始的想法始直接自己写公式解析方法,自定义公式,但开发时间会长些,但业务追的又紧,所以没有办法自己开发。于是搜索相关资料,常用的有 动态编译代码 、引入js模块使用eval()
函数。
动态编译代码风险太高,相当于直接给了执行代码的权限。故选择引入js模块。
解决方法
引入对应语言的js模块,使用js模块的eval()表达式。
如果公式是动态字段的,可以使用特殊符号(比如$)将动态字段包裹,然后做替换,之后再使用eval函数。
需求:通过 公式判定结果 取对应的 值 。
一开始的想法始直接自己写公式解析方法,自定义公式,但开发时间会长些,但业务追的又紧,所以没有办法自己开发。于是搜索相关资料,常用的有 动态编译代码 、引入js模块使用eval()
函数。
动态编译代码风险太高,相当于直接给了执行代码的权限。故选择引入js模块。
解决方法
引入对应语言的js模块,使用js模块的eval()表达式。
如果公式是动态字段的,可以使用特殊符号(比如$)将动态字段包裹,然后做替换,之后再使用eval函数。