【发布时间】:2016-12-01 14:46:02
【问题描述】:
这是我的数组 (http://www.jsoneditoronline.org/?id=cc51a12581667055781639b586fa6e15):
[
{
"documents": [
{
"name": "a",
"isSelected": true,
"status": "good"
},
{
"name": "b",
"isSelected": false,
"status": "good"
}
]
},
{
"documents": [
{
"name": "a",
"isSelected": true,
"status": "bad"
},
{
"name": "b",
"isSelected": false,
"status": "good"
}
]
},
{
"documents": [
{
"name": "a",
"isSelected": true,
"status": "verygood"
},
{
"name": "b",
"isSelected": false,
"status": "good"
}
]
},
{
"documents": [
{
"name": "a",
"isSelected": false,
"status": "good"
},
{
"name": "b",
"isSelected": false,
"status": "good"
}
]
}
]
我需要使用 _.lodash 编写条件。
如果数组中至少有一个带有Status 的Selected 文档而不是good 或verygood,则此条件必须返回TRUE
基于上面的数组。 http://prnt.sc/de3gx9 您可以在屏幕截图中看到,数组中是一个对象:
- 被选中
- 具有除
good或verygood以外的其他状态
如果在我的数组中至少有一个对象(isSelected = true,status = bad(或除好或非常好之外的任何对象)。 然后我想看看RESULT:TRUE
function checkStatusInArray() {
var data = [....]; // this is my array
var isDocumentSelectedWithWrongStatus = _.some(data, { isSelected: true, status: !"good" || !"verygood" });
// So if in array are some items with isSelected = true and status != good || verygood, then isDocumentSelectedWithWrongStatus = TRUE
return isDocumentSelectedWithWrongStatus;
}
【问题讨论】:
-
你能澄清过滤条件吗?
-
我添加了过滤器,因为我认为使用更少的对象会更容易
-
我只想查看布尔结果。如果会有 isSelected = true 和 status = bad、worst、badly 或任何除了:good 或 verygood 的项目。
-
请检查编辑中的代码。
标签: javascript lodash