当前位置:  开发笔记 > 编程语言 > 正文

将函数列表应用于Ramda中的值

如何解决《将函数列表应用于Ramda中的值》经验,为你挑选了1个好方法。

我怎样才能在Ramda中最好地创建这个功能?

function get_list (value) {
  return [
    first_transform(value),
    second_transform(value)
  ]
}

get_list(12)

我猜这是地图功能的反面.



1> Scott Christ..:

你有几个选择.

假设您的功能已经在列表中:

transforms = [first_transform, second_transform];

第一个选项是使用R.juxt,它通过创建一个将给定函数列表应用于新函数接收的值的新函数,几乎完全符合您的要求.

get_list = R.juxt(transforms);

另一个选项是R.ap将函数列表应用于值列表.R.of可用于将值包装在数组中.

get_list = R.compose(R.ap(transforms), R.of);

或者最后,R.map可以用于接收列表中的每个函数并返回将其应用于值的结果.

get_list = value => R.map(fn => fn(value), transforms);

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有