gpt4 book ai didi

javascript - 这个 Lodash uniqBy 调用的 Ramda 等价物是什么?

转载 作者:行者123 更新时间:2023-12-01 01:01:08 24 4
gpt4 key购买 nike

const data = [
{id: "001", failedReason: [1000]},
{id: "001", failedReason: [1001]},
{id: "001", failedReason: [1002]},
{id: "001", failedReason: [1000]},
{id: "001", failedReason: [1000, 1003]},
{id: "002", failedReason: [1000]}
];

给定这个数据集,如果我想返回具有唯一 id 值的对象数组,那么我可以使用 Lodash 简单地调用:_.uniqBy(data, 'id')

我知道使用此方法仅保留元素/匹配的第一次出现。

以上将返回:

[ { id: '001', failedReason: [ 1000 ] },
{ id: '002', failedReason: [ 1000 ] } ]

我是 Ramda 的新手。 Ramda one-liner 与此等效的是什么?

R.uniqBy(???, 数据)

最佳答案

Ramda 不采用 lodash 风格,允许字符串作为函数的替代方法来获取对象的命名属性。所以只需传递一个函数:

const data = [
{id: "001", failedReason: [1000]},
{id: "001", failedReason: [1001]},
{id: "001", failedReason: [1002]},
{id: "001", failedReason: [1000]},
{id: "001", failedReason: [1000, 1003]},
{id: "002", failedReason: [1000]}
];

console.log(uniqBy(prop('id'), data))
<script src="https://bundle.run/ramda@0.26.1"></script><script>
const {uniqBy, prop} = ramda </script>

关于javascript - 这个 Lodash uniqBy 调用的 Ramda 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56050563/

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