Javascript 检查jsonPath中的任何值是否重复

Javascript 检查jsonPath中的任何值是否重复,javascript,json,jsonpath,Javascript,Json,Jsonpath,我有一个jsonPath,如下所示 { "book": [ { "category": "reference", "author": "Nigel Rees", "title": "Sayings of the Century", "price": 8.95 }, { "category": "fiction",

我有一个jsonPath,如下所示

{   "book":
        [ 
            { "category": "reference",
              "author": "Nigel Rees",
              "title": "Sayings of the Century",
              "price": 8.95
            },
            { "category": "fiction",
              "author": "Nigel Rees",
              "title": "Sword of Honour",
              "price": 12.99
            }
]}
想看看是否有作者的名字被重复了? 我试过了


但是,它总是抛出一个未发现任何内容的异常,我如何检查
作者='奈杰尔·里斯'
的出现情况,即
作者='奈杰尔·里斯'
有两本书?

取决于如果作者姓名存在,您打算做什么。 如果您只想要具有作者Nigel Reese的对象,可以使用


.filter()
接受一个函数,该函数获取书籍和索引,根据函数的结果是
true
还是
false

实际上我使用的是Gatling Scala DSL
。检查(jsonPath($.book[?(@.author='“+authorName+”)])。查找(1))
。我试图验证不应该重复
authorName
。我对数数感兴趣,那个字符串被重复了多少次?哦,同样的概念仍然适用。您是否能够筛选数组,然后检查新数组的长度?
$.book[?(@.author=='Nigel Rees')].find(1)
    var booksByNigelReese = book.filter( function(book, index) {
        return book.author === 'Nigel Reese'
    })