DiagramPreview
基础解析无需 AI本地预览调试友好可导出

jq 过滤器测试器

粘贴 jq 风格过滤器和 JSON 数据,在浏览器里预览 keys、length、.items[].id、map(.field) 等常见结果。

示例
过滤后的 JSON 结果就绪
预览结果会显示在这里。

下一步可以继续

把当前预览结果带到相关工具里继续转换、排查或导出。

使用方法

  1. 1第一行写 jq filter,然后用 --- 分隔 JSON payload。
  2. 2先从 .items[] 这类简单选择器开始,再逐步加 map、pipe 或对象构造。
  3. 3复制到脚本或文档前检查过滤结果和行数据。
  4. 4复杂 filter 进入 CI 或生产自动化前,要用真实 jq 验证。

常见场景

API JSON 过滤支持脚本 reviewCI 片段校验AI jq 输出检查文档示例

常见问题

为什么输入要用 ---?

分隔符用于把 jq filter 和要检查的 JSON 文档分开。

这是完整 jq 吗?

不是。它覆盖常见预览场景,高级函数、module、streaming 和生产自动化仍应使用 jq。

如何调试 jq filter?

从能返回数据的最小选择器开始,再一步步添加 pipe 和 mapping。

jq Filter Tester 会用常见 jq 风格过滤器预览 JSON,适合检查 API payload 和生成式 JSON。

它适合支持脚本、CI 检查、文档示例,以及 AI 生成 JSON 转换逻辑的快速验证。

预览会显示过滤结果和结果行;生产行为仍应使用运行环境里的 jq 确认。

Demo:从 JSON 中提取失败检查项

jq filter 最好用同时包含命中和未命中记录的输入来 review,这样能看出条件是否过宽或过窄。

  • 先用 .checks[] 查看 item 结构。
  • 确认字段名后再加 select(.status != "ok")。
  • 需要生成报告时,构造小对象输出。
.checks[] | select(.status != "ok") | {name, status, duration}
---
{
  "checks": [
    {"name": "db", "status": "ok", "duration": 32},
    {"name": "api", "status": "failed", "duration": 914}
  ]
}

调试方法:把 jq 过滤器拆成小步骤

jq 最容易出错的地方是直接写复杂一行。处理日志、API 响应、CI 产物时,应该一段 pipe 一段 pipe 地确认中间结构。

  • 先用 keys、length 或数组选择器确认结构。
  • 确认字段路径存在后再加 select(...) 条件。
  • 用于报告时返回紧凑对象,不要输出整段嵌套记录。
.checks[]
| select(.status == "failed")
| {name, status, duration_ms, owner: .labels.team}

jq 过滤器测试器 检查清单

当你需要在文档、PR、故障复盘或交接材料发布前检查源码内容时,可以使用 jq 过滤器测试器。针对 JSON 运行常见 jq 风格过滤器,并预览过滤结果。

导出前建议检查标签是否可读、关系是否和源码一致、示例是否包含敏感信息,以及修改输入后预览是否仍然成立。

限制与排查

如果预览失败,先把输入缩小到最小完整示例,确认格式语法,再逐段加回内容。很多失败来自不完整文件、缩进错误、缺少图表头,或复制了依赖隐藏上下文的片段。

请把预览结果当作 review 界面,而不是生产事实来源。生成的图表、转换文件、看板和规则示例在进入正式文档或运维流程前仍需要人工确认。

可测试的示例输入

  • Extract emails: .users[].email --- { "users": [ {"id": 1, "email": "ada@example.com"}, {"id": 2, "email": "lin@example.com"} ] }
  • First order total: .orders[0].total --- {"orders":[{"id":"ord_1","total":49.9},{"id":"ord_2","total":19.5}]}
  • Map field: map(.name) --- [{"name":"api"},{"name":"worker"},{"name":"web"}]

工具完成度

基础解析

基础解析

这个工具偏向快速结构检查,适合预览、排查和定位问题;关键输出进入生产前仍需要人工复核。

分级不是质量打分,而是告诉用户当前工具更适合稳定导出、深度调试、快速解析,还是 AI 辅助生成。