我如何使用加载或 JS 函数式编程方法从嵌套数据结构中检索属性?

How can i use loads or JS functional programming approach to retrieve attributes from nested data structures?

我的目标是从对象中获取属性,属性如下: 颜色、图标、名称

(现在让我们调用 项目 对象)

棘手的部分是我需要从用户所在的所有 项目 中获取所有属性。

这应该有效

var projects = [/* Your big array */];

var userID = 1223456;
var userProjects = [];
for(project in projects) {
    for (member in project) {
    if(member.MemberId == userID) {
        userProjects.push(project);
    }
  }
}

虽然可能会有更优化的解决方案。

我使用过滤器、映射和包含解决了这个问题,我忘了提到我使用不可变数据结构。

像这样:

const memberProjects = projects.filter(project => project.get('Members').map(member => member.get('MemberId')).includes(memberId));