gpt4 book ai didi

c# - Lodash 相当于 C# LINQ GroupBy 和 TypeScript 中的 Select

转载 作者:搜寻专家 更新时间:2023-10-30 21:36:40 24 4
gpt4 key购买 nike

我正在尝试找到一种方法来完成 typescript 中的 .GroupBy(key => key.IdShopItem).Select(item => item.Single()); 的等效操作。

我试过这个LinQ for TypeScript https://github.com/kutyel/linq.ts但似乎有一个错误,而且到目前为止它还不支持这一点。

我也试过 lodash https://lodash.com/docs/4.17.10#groupBy , 但我没有成功。

请问我怎样才能做到这一点?已经为此花费了几个小时...

最佳答案

免责声明:我写了这个库

您可以使用 javascript loq库来实现这一点。这里有一个片段可以帮助您继续前进:

var list = [
{name:"dog",type:"animal"},
{name:"cat",type:"animal"},
{name:"snake",type:"animal"},
{name:"table",type:"furniture"},
{name:"chair",type:"furniture"},
];
var filtered = loq(list).distinctBy(item => item.type);
console.log(filtered.toArray());
<script src="https://cdn.rawgit.com/biggyspender/loq/67db7014/lib/loq.min.js"></script>

...或者使用 requirejs

requirejs.config({
paths: {
loq: 'https://cdn.rawgit.com/biggyspender/loq/67db7014/lib/loq.min'
}
});

require(['loq'], function(loq){
var list = [
{name:"dog",type:"animal"},
{name:"cat",type:"animal"},
{name:"snake",type:"animal"},
{name:"table",type:"furniture"},
{name:"chair",type:"furniture"},
];
var filtered = loq(list).distinctBy(item => item.type);
console.log(filtered.toArray());
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.14/require.js"></script>

它是对可迭代对象(实现 Symbol.iterator 的对象)的 LINQ-to-objects 的相对完整的重新实现,带有一些额外的好东西(例如 distinctBy)。看看 tests查看其他用途。

关于c# - Lodash 相当于 C# LINQ GroupBy 和 TypeScript 中的 Select,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50379196/

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