gpt4 book ai didi

javascript - 用于多个嵌套级别数组的 Lodash keyBy

转载 作者:行者123 更新时间:2023-11-30 07:21:23 25 4
gpt4 key购买 nike

我有一个对象数组,我想将它转换为以 id 为键的键值对映射。但是,我想在根级别和 recipes 属性中执行此操作。

数组resp:

[
{
"id": "1",
"recipes": [
{
"id": 4036
},
{
"id": 4041
}
]
},
{
"id": "2",
"recipes": [
{
"id": 4052
},
{
"id": 4053
}
]
}
]

我遇到了 _.keyBy(),它将属性映射为键,但它不允许嵌套级别。

功能:

var respObj = _.keyBy(resp, 'id');

是否有一个优雅的解决方案来处理 resp 以使嵌套在数组中的所有对象都使用 id 作为键?

谢谢!

最佳答案

你可以使用 _.keyBy_.mapValues

_.chain(resp)
.keyBy('id')
.mapValues(function(item) {
item.recipes = _.keyBy(item.recipes, 'id');
return item;
})
.value();

关于javascript - 用于多个嵌套级别数组的 Lodash keyBy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40937961/

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