在 TypeScript 中使用 Reduce 实现 Map 函数

安娜·哈西娜

我需要使用reduce.

要求:

  • map函数应该将一个fn函数应用于 中的每个元素array
  • array 不应该突变

到目前为止,这是我的代码(我正在检查数组是否为空):

function map<A, B>(array: A[], fn: (a: A) => B): B[] {
  if (array.length === 0) {
    return [];
  } 

}

将不胜感激任何帮助!

埃文·特林博利

你可以做这样的事情(未经测试):

const map = <A, B>(array: readonly A[], fn: (a: A) => B): B[] => {
  return array.reduce((all, item) => {
    all.push(fn(item));
    return all;
  }, [] as B[]);
};

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章