我有一个像这样的对象:
runs =
{
"suites": [
{
"status": "fail",
"testcases": [
{
"status": "pass"
},
{
"status": "fail"
}
]
},
{
"status": "pass",
"testcases": [
{
"status": "pass"
}
]
}
]
}
我想检索测试用例通过和失败的计数(在上述情况下通过:2,失败:1)。我尝试了以下方法来获取通过次数:
runs.suites.filter(suite => {
suite.testcases.filter(testcase => {
return testcase.status === 'pass';
})
}).length
但它给了我一个不正确的结果。
最佳答案
试试这个
// Code goes here
runs =
{
"suites": [
{
"status": "fail",
"testcases": [
{
"status": "pass"
},
{
"status": "fail"
}
]
},
{
"status": "pass",
"testcases": [
{
"status": "pass"
}
]
}
]
};
var count = 0;
var test = runs.suites.filter(suite => {
suite.testcases.filter(testcase => {
(testcase.status=='pass')?count++:count;
})
return count;
});
console.log(test.length);
关于javascript - 根据条件过滤嵌套数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38305606/