【发布时间】:2018-01-03 20:45:34
【问题描述】:
我有一个数组
[
{"name":"Ticket1","releases":[{"needToBeDeliver":true,"name":"release1","delivered":false},{"needToBeDeliver":true,"name":"release2","delivered":false}]},
{"name":"Ticket2","releases":[{"needToBeDeliver":true,"name":"release1","delivered":false},{"needToBeDeliver":true,"name":"release2","delivered":false},{"needToBeDeliver":false,"name":"unplanned","delivered":false}]},
{"name":"Ticket3","releases":[{"needToBeDeliver":false,"name":"release1","delivered":false},{"needToBeDeliver":false,"name":"unplanned","delivered":false}]},
{"name":"Ticket4","releases":[{"needToBeDeliver":false,"name":"unplanned","delivered":false}]}
]
在上面的数组中,我必须检查发布数组是否包含“未计划”条目并且 count(releases.needToBeDeliver == true) > 0,然后从发布数组中取消设置“未计划”条目。
例如
- 在第一个索引中,它将保持原样,因为它不包含发布数组中的任何计划外条目
- 在第二个索引中,它包含计划外条目,并且needToBeDeliver值为true超过一次,删除计划外条目
- 在第三个索引中,它包含计划外条目但needToBeDeliver不等于true,不要删除计划外条目
- 在第四个索引中,它包含计划外条目但needToBeDeliver 不正确,不要删除计划外条目
O/p 应该跟随
[
{"name":"Ticket1","releases":[{"needToBeDeliver":true,"name":"release1","delivered":false},{"needToBeDeliver":true,"name":"release2","delivered":false}]},
{"name":"Ticket2","releases":[{"needToBeDeliver":true,"name":"release1","delivered":false},{"needToBeDeliver":true,"name":"release2","delivered":false}]},
{"name":"Ticket3","releases":[{"needToBeDeliver":false,"name":"release1","delivered":false},{"needToBeDeliver":false,"name":"unplanned","delivered":false}]},
{"name":"Ticket4","releases":[{"needToBeDeliver":false,"name":"unplanned","delivered":false}]}
]
到目前为止我所尝试的:
tickets.forEach(ticketsData => {
var i = 0;
ticketsData.releases.forEach(release => {
if(release.needToBeDeliver === true){
i++;
}
});
});
但我不知道如何在循环中添加第二个条件以检查每个索引的发布数组中是否存在计划外条目。请帮助我继续此操作。
【问题讨论】:
-
试试这个
if(release.needToBeDeliver === true && releases.name == 'unplanned'){ -
@HassanImam,事情是计划外的条目永远不会需要需要交付为真,我们必须检查发布数组中的其他条目,
标签: javascript foreach