gpt4 book ai didi

javascript - 有没有办法在 TypeScript 中动态应用数组映射器?

转载 作者:行者123 更新时间:2023-12-04 17:16:09 29 4
gpt4 key购买 nike

我需要帮助。我正在尝试从数组中获取数据,但每次我添加一个新的组过滤器(我正在使用自定义 Kendo 网格)时,我收到的是一个嵌套数组,如果我想获取这些数据,我需要添加一个新“items”数组上的 map 方法。问题是我没有只有一个组过滤器,但我有太多。我能做什么?

所以每次我都必须在 items 数组上添加另一个 map 方法,这不是很舒服。我的问题有解决办法吗?我可以很容易地得到组过滤器的数量。

最佳答案

您可以使用 flatMap 进行转换,例如[ [1, 2], [3, 4] ][1, 2, 0, 3, 4, 0] for arr.flatMap(v => [...v, 0])。在您的情况下,这应该有相同的结果:

const temp = this.result.data
.flatMap(x => x.array)
.map(y => y.selections)

这使您的代码更具可读性,并且更易于维护和添加。

如果你真的想动态添加 map 功能,你可以这样做:

const maps = [
x => x.array,
v => [v, v * 11],
v => [v, -v],
v => `num: ${v}`,
];

const data = [
{ array: [1, 2] },
{ array: [3] },
];

const temp = maps.reduce((data, map) => data.flat().map(map), data);
console.log(temp);

关于javascript - 有没有办法在 TypeScript 中动态应用数组映射器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68669571/

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