如何在没有嵌套 for 循环的情况下实现以下目标:
invitations
是一个具有以下结构的数组:
邀请:
[{
"id": "TDK4QP788FOLMHQSZAFSYVVQ182RGM83",
"date_created": "2016-11-08T15:37:04.409Z",
"events": [{
"end_time": "21:00",
"start_time": "20:00"
}]
}, {
"id": "DEI4644LAR91SKGUKMR7RTWY3CMC7PCP",
"date_created": "2016-11-08T03:57:11.145Z",
"events": [{
"end_time": "23:45",
"start_time": "06:00"
}]
}]
事件:
[{
"end_time": "23:45",
"start_time": "06:00"
}, {
"end_time": "23:45",
"start_time": "06:00"
}, {
"end_time": "23:45",
"start_time": "06:00"
}, ]
我想遍历邀请数组,然后遍历每个事件项,然后将该项的开始和结束时间与事件数组中的每个项进行比较,同时还遍历事件数组。
我想我可能已经做完了。如果没有三个或更多嵌套循环,是否有另一种可能的方法来做到这一点?
提前致谢。
最佳答案
使用映射非常简单。参见 lodash _.map
.
var results = _.map(invitations, 'events');
也可以用ES6实现
var results = invitations.map(function(invitation) {
return invitation.events;
});
但是 lodash 的实现速度更快。
关于javascript - 避免多重嵌套循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40497864/