首页 > 解决方案 > 如何使用 Ramda 函数在索引处获取参数?

问题描述

笔记

首先,我想将其发布到代码审查网站;但是您至少需要 3 行代码,而且这个问题不需要那么多代码。我知道这个问题对于 SO 来说有点含糊,但我看不到一个更适合发布它的网站。


实际问题

我发现它在几种情况下很有用,特别是在使用 ramda 时,能够拥有一个简单地返回n传递给函数的参数的函数。

我能够产生的最简单的方法是:

const takeArgument = argIndex => (...args) => args[argIndex];

这很好,可以满足我的需要,但我的问题是,有没有办法只使用 Ramda 函数来做到这一点?我找不到任何这样做的例子,但我觉得必须有一种简单的方法来做这样的事情。

标签: javascriptramda.js

解决方案


正如@Thomas 在他的评论中提到的,这很容易实现nthArg,例如:

const { nthArg } = R;
const getSecondArg = nthArg(1)

const x = getSecondArg(1, 2)
console.dir(x)
<script src="https://cdnjs.cloudflare.com/ajax/libs/ramda/0.26.1/ramda.min.js"></script>


推荐阅读