JSON

检查 JSON 内容

对 JSON 标识做路径、名称、数值或对象相等判断,适用于结构化数据校验和分支判断。

命令用途

CheckJson 用于对 JSON 内容做条件判断。

它通常用于检查某个路径是否存在、某一层是否包含指定名称或数值,或者比较两个 JSON 标识的内容是否相同。

命令名

CheckJson

调用格式

CheckJson <标识> <方法> <值> [选项]

参数说明

参数必填说明
标识是要判断的 JSON 标识。
方法是支持 X、N、V、E。X 判断路径是否存在,N 判断名称是否存在,V 判断数值是否存在,E 判断两个 JSON 内容是否相同。
值是当前判断使用的路径、名称、数值或另一个 JSON 标识。
选项否在 N、V 等场景下可补 0/1,表示是否嵌套检查子节点。

返回或影响

  • 这是检查型命令,只能在条件判断流程中使用。
  • 条件成立时,#IF 判断通过。
  • 它只负责判断 JSON 内容,不负责初始化 JSON 或读取具体值。
  • 如果后续要取值,通常要配合 JSON 命令或 <$JSON(...)> 标签。

示例

基础用法

#IF
CheckJson 活动数据 X rewards[0]
#ACT
SendMsg 7 "已检测到奖励配置。"

这段写法用于判断 活动数据 中是否存在 rewards[0] 这个路径节点。

常见变体

#IF
CheckJson myjson1 N name2 1
#ACT
SendMsg 6 "包含名称,数值是:<$JSON(myjson1)myobj.subobj.name2>"

这类写法用于嵌套检查子节点名称是否存在,并在成功后继续读取对应 JSON 值。

注意事项

  • CheckJson 只负责判断,不负责创建 JSON 标识;判断前应先确认对应 JSON 已初始化。
  • N 和 V 这类判断是否做嵌套检查,取决于最后一个可选参数是否传入 1。
  • 如果你的目标是取值而不是判断,直接看 JSON 命令和 <$JSON(...)> 标签会更合适。

相关命令