You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Jayway Json Path查找无likes字段的书籍价格?

用Jayway Json Path查找无likes字段书籍的price值

当然可以用Jayway Json Path实现这个需求!不过你当前写的表达式$.store.book[? (@.likes == null)].price需要调整,因为它匹配的是存在likes字段但值为null的书籍,而你要找的是根本没有likes字段的书籍,两者的判断逻辑不一样。

正确的表达式写法

在Jayway Json Path中,判断字段不存在有两种常用写法:

  • 写法一:利用!(@.field)判断字段不存在
    $.store.book[?(!@.likes)].price
    
  • 写法二:直接判断字段等于undefined
    $.store.book[?(@.likes == undefined)].price
    

验证结果

针对你提供的JSON数据,这两个表达式都会返回以下price值:

  • 8.95(《Sayings of the Century》)
  • 8.99(《Moby Dick》)
  • 22.99(《The Lord of the Rings》)

而你原来的表达式会返回空结果,因为你的数据里没有任何一本书的likes字段是null——只有第二本书明确存在likes字段(值为1),其他三本书都没有这个字段,所以@.likes == null无法匹配到它们。

内容的提问来源于stack exchange,提问作者Yassir Arafat Roni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 07:19:42