【问题标题】:How best to represent nested logical expressions in JSON如何最好地表示 JSON 中的嵌套逻辑表达式
【发布时间】:2023-03-05 16:15:01
【问题描述】:

我需要一个界面来在 Web 应用程序中构建规则。需要维护状态,我想知道存储嵌套逻辑表达式的最合适方法是什么(示例 (a>b && a>c) || (a==0))

JSON 是否足以表示此类表达式,或者是否有任何替代方法可以实现相同的效果。

在构建表达式时对用户没有任何限制。

【问题讨论】:

    标签: javascript json arithmetic-expressions


    【解决方案1】:

    在 JSON 中表示表达式有两种方式:

    1. 作为纯字符串。这通常效果很好,易于调试和理解:{"expr":"(a>b && a>c) || (a==0)"}

    2. 作为解析树。一般来说,解析树充其量是难以理解的,而且通常无法调试(就像往常一样,“这将花费太多精力”)。

    如果你采用解析树的方法,那么你需要定义 JSON 片段来表示树的每一部分,然后递归地构建它。

    如果你不知道我在说什么:我强烈建议解决方案 #1。

    【讨论】:

    • 决定使用 POST-FIX
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多