空手道框架 - 如何计算 json 响应中的数组数量

karate framework - how to count number of arrays in json response

我有一个 JSON 回复如下:

"log": [{
        "a": 0.40,
        "b": "ED",
    }, {
        "c": 82,
        "d": "ABC",
    }, {
        "e": 36,
        "f": 23,
    }, {
        "g": 12,
        "h": 40,
    }
]

我需要计算 'log' 对象中的列表数量,以便能够找到最后一个列表并找到其中的特定元素。响应是动态的,其中包含不同数量的列表(在本例中为 4 个)

我尝试了 log[-1],示例形成了 js-arrays.feature,如下面的 link 所示: https://github.com/intuit/karate/blob/master/karate-junit4/src/test/java/com/intuit/karate/junit4/demos/js-arrays.feature#L83

在列表中查找多个元素很容易,但我经常有可变数量的列表,我无法让它工作 非常感谢,

考虑到 log[-1] 会 return 您未定义,因为数组中没有索引 -1。要获取数组中的元素数量,您必须执行

log.length

还有关于您发布的link

log[log.length-1]; //This will return the last element of the array in this case { "g": 12, "h": 40, }