gpt4 book ai didi

javascript - JS,字典列表到列表字典,基于key

转载 作者:太空宇宙 更新时间:2023-11-04 03:14:31 26 4
gpt4 key购买 nike

我有一个字典列表,其中有一些属性,例如 url 和有关 url 的一些信息:

[{
url:"https://example1.com/a"
something:"ABC"
},{
url:"https://example1.com/b"
something:"DEF"
},{
url:"https://example2.com/c"
something:"GHI"
},{
url:"https://example2.com/d"
something:"JKL"
}]

现在我想将其拆分为列表字典,并根据 url 进行分组。对于上述内容,我的目标数据结构是这样的:

{
"example1.com" : [{
url:"https://example1.com/a"
something:"ABC"
},{
url:"https://example1.com/b"
something:"DEF"
}],
"example2.com" : [{
url:"https://example2.com/c"
something:"GHI"
},{
url:"https://example2.com/d"
something:"JKL"
}]
}

在 python 中,这可以使用 itertools 包以及一些列表理解技巧来实现,但我需要在 javascript/nodejs 中实现。

有人可以引导我在正确的方向上使用 javascript 执行此操作吗?

干杯。

最佳答案

data.reduce((groups, item) => {
let host = new URL(item.url).hostname;
(groups[host] || (groups[host] = [])).push(item);
return groups;
}, {});

一行(虽然很神秘)

data.reduce((g, i, _1, _2, h = new URL(i.url).hostname) => ((g[h] || (g[h] =[])).push(i), g), {});

关于javascript - JS,字典列表到列表字典,基于key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58551916/

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