gpt4 book ai didi

javascript 在嵌套数组中查找子对象

转载 作者:可可西里 更新时间:2023-11-01 02:37:50 24 4
gpt4 key购买 nike

我有一个如下所示的 javascript 结构(嵌套的对象数组)

var categoryGroups = [
{
Id: 1, Categories: [
{ Id: 1 },
{ Id: 2 },
]

},
{
Id: 2, Categories: [
{ Id: 100 },
{ Id: 200 },
]

}
]

我想找到一个与 Id 匹配的子类别对象,假设类别 ID 都是唯一的。

我在下面得到了这个,但想知道是否有更简洁的方法:

var category, categoryGroup, found = false;
for (i = 0; i < categoryGroups.length ; i++) {
categoryGroup = categoryGroups[i];
for (j = 0; j < categoryGroup.Categories.length; j++) {
category = categoryGroup.Categories[j];
if (category.Id === id) {
found = true;
break;
}
}
if (found) break;
}

最佳答案

使用 flatMap在 ES2019

const category = categoryGroups.flatMap(cg => cg.Categories).find(c => c.Id === categoryId);

关于javascript 在嵌套数组中查找子对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22343437/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com